是否可以将单个XSLT 1.0文件用于不同的ASP.NET页面?

时间:2014-06-26 08:24:55

标签: asp.net xslt-1.0

我试图在互联网上找到问题的明确答案,如果可以将单个XSLT 1.0文件用于不同的ASP.NET页面,但是没有找到它。

我不确定这应该如何运作。我们是否必须在XSLT文件中使用参数和某种部分?

这个例子非常受欢迎。

1 个答案:

答案 0 :(得分:0)

是的,您可以使用相同的xslt为多个页面设置 Xml.TransformSource 后面的代码

来自MSDN

  

TransformSource属性用于指定XSL的路径   转换样式表文件(表示XSL转换   样式表)用于在写入XML文档之前对其进行格式化   输出流。您可以使用相对路径或绝对路径。一个   相对路径将文件的位置与该位置相关联   Web窗体页面或用户控件,而不指定完整路径   服务器。该路径相对于网页的位置。这个   使整个网站更容易移动到另一个目录   服务器没有更新代码中文件的路径。一条绝对的道路   提供完整路径,将站点移动到另一个目录   需要更新代码。

可以通过后面的代码定义源和转换文件:

来自MSDN

的示例
void Page_Load(Object sender, EventArgs e) 
      {
         XmlDocument doc = new XmlDocument();
         doc.Load(Server.MapPath("people.xml"));

         XslTransform trans = new XslTransform();
         trans.Load(Server.MapPath("peopletable.xsl"));

         xml1.Document = doc;
         xml1.Transform = trans;
      }

修改

我不太清楚你的意思是什么:

  

我需要一些可以告诉我文件内容的内容。

但如果您在转换中需要一些参数,则可以使用TransformArgumentList

XsltArgumentList xslArg = new XsltArgumentList();
DateTime d = DateTime.Now;
xslArg.AddParam("date", "", d.ToString());
xml1.TransformArgumentList = xslArg;