xslt转换后一定要生成一个html的文件吗 ?我想在后台将转换好的xml innerHTML的方式动态的展示在前台页面 ,应该怎么得到转换的字符串呢 ?
已经知道答案了可以使用如下代码:
XslCompiledTransform xslFile = new XslCompiledTransform();
xslFile.Load(Server.MapPath("") + "/Template/SimplenessView.xsl");
XmlDocument xmlFile = new XmlDocument();
xmlFile.Load(Server.MapPath("") + "/Template/QBQuestion.XML");
StringWriter transWrite = new StringWriter();
xslFile.Transform(xmlFile.CreateNavigator(), new XsltArgumentList(), transWrite);
this.form1.InnerHtml = transWrite.ToString();
如果需要输出为文件的话可以使用如下代码 ,希望能帮助到有同样疑惑的人 !
XslCompiledTransform xslFile = new XslCompiledTransform();
xslFile.Load(Server.MapPath("") + "/Template/SimplenessView.xsl");
XmlDocument xmlFile = new XmlDocument();
xmlFile.Load(Server.MapPath("") + "/Template/QBQuestion.XML");
string htmPath = Server.MapPath("XsltHtml.htm");
using (StreamWriter sw = new StreamWriter(htmPath, false,Encoding.Default))
{
xslFile.Transform(xmlFile, null, sw);
sw.Flush();
sw.Close();
sw.Dispose();
}