用XsltArgumentList实现xsl的参数调用

互联网 17-3-1
选择自 hstod 的 Blog
xmlDocument XmlDoc=new XmlDocument();      XmlDoc.Load(strFilePath);      XslTransform xslt = new XslTransform();          xslt.Load(strXslPath);      XsltArgumentList xslArg = new XsltArgumentList();          xslArg.AddParam("Key1", "",IXPath);          xslArg.AddParam("Path", "",strPath);      StringBuilder sb = new StringBuilder("");          StringWriter sw = new StringWriter(sb);          XmlTextWriter writer = new XmlTextWriter(sw);          xslt.Transform(XmlDoc,xslArg,writer,null);          writer.Close();           HXML.InnerHtml=sb.ToString();

这是xsl文件

<?xml version="1.0" encoding="UTF-8" ?>  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">   <xsl:param name="Key1"/>   <xsl:param name="Path"/>   <xsl:template match="/">    <xsl:apply-templates select="/DB/L[@Key=$Key1]" />   </xsl:template>      <xsl:template  match="L[@Type='1']">    <a target="_blank">     <xsl:attribute name="href"><xsl:value-of select="@Link" /></xsl:attribute>     <img border="0">      <xsl:attribute name="width"><xsl:value-of select="@width" /></xsl:attribute>      <xsl:attribute name="height"><xsl:value-of select="@height" /></xsl:attribute>          <xsl:attribute name="src"><xsl:value-of select="$Path" />Res/AD/<xsl:value-of select="@File" /></xsl:attribute>     </img>       </a>   </xsl:template>      <xsl:template  match="L[@Type='2']">     <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"      codebase="http://download.macromedia.com/pub/shockwave/cabs/Flash/swflash.cab#version=6,0,29,0" >      <xsl:attribute name="width"><xsl:value-of select="@width" />      </xsl:attribute>      <xsl:attribute name="height"><xsl:value-of select="@height" />      </xsl:attribute>          <param name="movie">      <xsl:attribute name="value"><xsl:value-of select="$Path" />Res/AD/<xsl:value-of select="@File" />      </xsl:attribute>      </param>      <param name="quality" value="high"/>      <embed quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash">       <xsl:attribute name="width"><xsl:value-of select="@width" />       </xsl:attribute>       <xsl:attribute name="height"><xsl:value-of select="@height" />       </xsl:attribute>           <xsl:attribute name="src"><xsl:value-of select="$Path" />Res/AD/<xsl:value-of select="@File" />       </xsl:attribute>          </embed>     </object>   </xsl:template>     </xsl:stylesheet>

xml文件

<?xml version="1.0" encoding="GB2312"?>  <DB>    <L Name="测试1" height="100" width="100"     Link="http://www.123.com" File="20056171345164340.gif" Key="200561713451653143405" Type="1" />  </DB>

以上就是用XsltArgumentList实现xsl的参数调用的内容,更多相关内容请关注PHP中文网(www.php.cn)!

来源链接:
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
上一篇:php获取远程图片并下载保存到本地的方法分析 下一篇:将一个图片以二进制值的形式存入Xml文件中

相关资讯