如何在visual studio环境中使用EXSLT

时间:2011-04-01 12:01:54

标签: xslt exslt xslt-tools

是否可以在Visual Studio中使用EXSLT函数?我在VS中编写和调试我的xslt脚本。我需要做些什么才能使用,例如date:add()函数?一个非常简单的脚本应该是什么样子? 非常感谢, 彼得

2 个答案:

答案 0 :(得分:2)

Visual Studio(2010,2008和2005)的最新三个版本都使用.NET XslCompiledTransform XSLT处理器。 XslCompiledTransform没有实现除common:node-set()之外的任何EXSLT函数 - 所以在这里你运气不好。

我不认为在Visual Studio中使用其他XSLT处理器有一种简单而自然的方法,即使可能有一些技巧,在这种情况下也无法进行XSLT调试。 / p>

最后,EXSLT通常提供一些EXSLT函数的有限XSLT实现。当然,这不那么强大和方便,但你可以走那条路。

我的个人建议是开始使用XSLT 2.0 ,它比XSLT 1.0强大得多,因此很少需要在XSLT 2.0应用程序中使用EXSLT。

当然,VS中没有对XSLT 2.0的支持,但是还有其他优秀的IDE,比如oXygen,除此之外还提供了很好的XSLT 2.0和XQuery调试器。

更新:您可以为XslCompiledTransform使用EXSLT的第三方实施: MVP - XML project's EXSLT .NET module

答案 1 :(得分:1)

您还可以使用msxml:script标记在XSLT中包含您自己的函数。这适用于简单的功能,也可以在VS2005及更高版本中调试,例如

<msxml:script implements-prefix="user">
  <![CDATA[ 
  function toUpperCase(str)
  {
    return str.toUpperCase();
  }
  ]]>
</msxml:script>