今天给大家分享的是由图老师小编精心为您推荐的用XsltArgumentList实现xsl的参数调用,喜欢的朋友可以分享一下,也算是给小编一份支持,大家都不容易啊!
【 tulaoshi.com - Web开发 】
选择自 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
来源:http://www.tulaoshi.com/n/20160219/1626965.html
看过《用XsltArgumentList实现xsl的参数调用》的人还看了以下文章 更多>>