用XsltArgumentList实现xsl的参数调用
来源:互联网 发布时间:2008-09-04 11:24:00
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="http://www.chinaz.com/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.chinaz.com" File="20056171345164340.gif" Key="200561713451653143405" Type="1" />
</DB>


猜你喜欢
- 在JavaScript中,我们应该尽可能的用局部变量来代替全局变量,这句话所有人都知道,可是这句话是谁先说的?为什么要这么做?有什么根据么?
- 南京的炎炎夏日也未能挡住书友会朋友们的参与,下午两点半我们正式开始了这个月的话题:“浏览器”。一开始大家大致上说了一些自己认为各浏览器中各自
- 清除浮动一个凡是做页面的人都会遇到的一个东西,但是是否大家都能够清楚的知道,全方位的了解呢?于是一闲下来了马上写了这样的一篇文章,不能讲面面
- 静态方法:将下面的代码复制到<body>~</body>内 程序代码 <table cellpadd
- HTTP(HyperTextTransferProtocol)是超文本传输协议的缩写,它用于传送WWW方式的数据,关于HTTP协议的详细内容
- phpMyAdmin 是一套可以通过WEB来管理 MySQL-server 以及单一数据库的 PHP
- 有感于中国互联网设计界十几年的变化,从网页设计师变身界面设计师,和近一两年来兴起的转型交互设计师。大多数都是随着一个行业的兴起而前赴后继的投
- 在DreamWeaver中编写CSS,这种编写习惯并不提倡,不过由于"可视化"和操作简便,使用的朋友依然很多,今天罗列一
- 本站收集的js实现的同步动态显示当前日期,时间和星期几的代码,我经常用在自己做的企业网站的后台,方便嘛。效果可以看看本站的首页,呵呵!而且代
- js浮点数计算有时是不准确的,比如7*0.8 == 7*8/10的值为false,因为7*0.8=5.6000000000000005,乘出
- Hihi, 大家好~ 最近有不少人都提及了网页上该如何选择字体的问题。问题虽然小,但是却是前端开发中的基本,因为目前的网页,还是以文字信息
- 通常,在完成了一件网页设计后,设计师的无知都会显露无遗而备受指责。他们把创建网页代码的繁重工作都留给了程序员们。这种现象不只出现在网络开发行
- 2009年2月24日,Safari 4.0 beta版正式发布,Safari从它的3.2版本开始就已经支持所有的CSS选择器(包括最新的CS
- 数据类型是所有开发语言的基础,JavaScript虽然是一个弱类型的脚本语言,但是在数据类型上也有很多讲究的,看了淘宝UED玉伯的一篇文章,
- 如何做一个密码“生成器”?randompassword.asp<% Dim i, intNum,&nbs
- 一、介绍这篇文档旨在介绍如何安装配置基于2台服务器的MySQL集群。并且实现任意一台服务器出现问题或宕机时MySQL依然能够继续运行。虽然这
- html5带给我们的不仅仅是更多语义丰富的标签,还有更多更牛逼的特性,比如“离线存储”。 对于台式电脑来说,或者它并没有带来什么惊喜,但是对
- 一 MySQL WorkbenchMySQL Workbench提供DBAs和developers一个集成工具环境:1)数据库设计和建模2)
- 如何制作一个防止多次刷新计数的图片计数器?请问如何做一个专业的图片计数器? <%countlong
- 递归查询对于同一个表父子关系的计算提供了很大的方便,这个示例使用了SQL server 2005中的递归查询,使用的表是CarParts,这