0

请注意,我有一个XML文件,其中包含要显示给用户的此类信息。我得到了XSL包含要显示的内容的样式信息的文件。

我在控制器中编写了以下操作以返回包含XML文件内容的视图。

public ActionResult GetError()
{
  XmlDocument xdoc=GetXMLError();
  return View(xdoc);
}

[#GetError.cshtml]
@model System.Xml.XmlDocument
@MvcHtmlString.Create(Model.InnerXml).ToHtmlString()

但是屏幕将它检索到的 xml 呈现为字符串而不是 HTML 字符串。这意味着它打印我发送的xml。

我还在相应的文件中包含了 XSL 文件View Folder.

我不知道进一步的诉讼程序。

谁能帮我解决这个问题以指定样式格式呈现 XML?

4

1 回答 1

0

最后我得到了输出。我感谢@sundar G 的评论。

我改变了控制器如下,

public ActionResult GetError()
{
  XmlDocument xdoc=GetXMLError();
  XslCompiledTransform xsl = new XslCompiledTransform();
  xsl.Load(@"D:\Development\Test.xsl");
  XmlReader xReader = XmlReader.Create(new StringReader(xdoc.InnerXml));
  StringBuilder stringBuilder=new StringBuilder();
  XmlWriter xWriter=XmlWriter.Create(stringBuilder);
  xsl.Transform(xReader, xWriter);
  return View(stringBuilder);
}

并在视图中。

@model System.Text.StringBuilder
@MvcHtmlString.Create(Model.ToString())
于 2013-05-21T11:40:45.540 回答