繁体   English   中英

如何使用XSL在部分视图中呈现XML文档?

[英]How to render the XML Document in partial view with XSL?

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

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

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

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

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

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

我没有进一步诉讼的线索。

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

终于我得到了输出。 我感谢@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())

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM