c#使用XSLT将xml文档转换为html文档

前端之家收集整理的这篇文章主要介绍了c#使用XSLT将xml文档转换为html文档前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

下面是编程之家 jb51.cc 通过网络收集整理的代码片段。

编程之家小编现在分享给大家,也给大家做个参考。

需要引用下面的命名空间:

using System.Xml;  
using System.Xml.Xsl;

方法实现:

public static string ConvertXML(XmlDocument InputXMLDocument,string XSLTFilePath,XsltArgumentList XSLTArgs)  
{  
   System.IO.StringWriter sw = new System.IO.StringWriter();  
   XslCompiledTransform xslTrans = new XslCompiledTransform();  
   xslTrans.Load(XSLTFilePath);  
   xslTrans.Transform(InputXMLDocument.CreateNavigator(),XSLTArgs,sw);  
   return sw.ToString();  
}
<?xml version="1.0" encoding="utf-8" ?>
<sexystars>
  <category name="Bollywood">
    <sexystar name="Antra mali" />
    <sexystar name="Deepika Padukone" />
    <sexystar name="Mandira Bedi" />
  </category>
  <category name="Hollywood">
    <sexystar name="Jennifer Lopez" />
    <sexystar name="Jessica Alba" />
  </category>
</sexystars>
<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="yes"/>
  <xsl:template match="sexystars">
    <div>
      <xsl:apply-templates select="category" />
    </div>
  </xsl:template>
  <xsl:template match="category">
    <h2>
      <xsl:value-of select="@name"/>
    </h2>
    <ul>
      <xsl:apply-templates select="sexystar" />
    </ul>
  </xsl:template>
  <xsl:template match="sexystar">
    <li>
      <xsl:value-of select="@name"/>
    </li>
  </xsl:template>
</xsl:stylesheet>
XmlDocument xDoc=new XmlDocument();  
xDoc.Load(@"C:\sample.xml");  
string returnhtml = ConvertXML(xDoc,@"C:\sample.xslt",new XsltArgumentList());
<div>
<h2>Bollywood</h2>
  <ul>
    <li>Antra mali</li>
    <li>Deepika Padukone</li>
    <li>Mandira Bedi</li>
  </ul>
<h2>Hollywood</h2>
  <ul>
    <li>Jennifer Lopez</li>
    <li>Jessica Alba</li>
  </ul>
</div>

以上是编程之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

猜你在找的C#相关文章