如何在XSL中嵌入由C#代码生成的HTML?

时间:2010-02-23 11:29:47

标签: c# html xslt xsl-fo

我有从XML创建HTML的XSLT。我需要通过外部C#方法(扩展方法)创建生成的HTML的几个部分。

  1. 如何将此C#方法嵌入到XSLT中(在xsl节点内?我知道如何在XSLT中使用通用扩展函数)
  2. 我的C#函数应该返回什么? HTML格式的字符串?使用转义的HTML标记还是没有?
  3. 非常感谢!

1 个答案:

答案 0 :(得分:0)

如果你想要返回不符合XML规则的HTML标签,那么你只能返回一个字符串然后使用例如<xsl:value-of select="pf:yourFunction()" disable-output-escaping="yes"/>。如果要构建节点的节点集或结果树片段然后检查the documentation,它会显示XSLT类型和.NET框架类型之间的映射,例如如果您希望函数返回XSLT视为节点集的结果,则使用类型XPathNodeIterator作为扩展函数的.NET返回类型。