如何在VisualStudio环境中使用EXSLT

如何在VisualStudio环境中使用EXSLT,xslt,exslt,xslt-tools,Xslt,Exslt,Xslt Tools,是否可以在Visual Studio中使用EXSLT函数?我在VS中编写和调试xslt脚本。我必须做些什么才能使用例如date:add()函数?一个非常简单的脚本应该是什么样子? 谢谢, petrVisual Studio的最新三个版本(2010、2008和2005)都使用.NET XslCompiledTransform XSLT处理器。XslCompiledTransform不实现任何EXSLT函数,除了common:node-set() 我认为在VisualStudio中没有一种简单自然的

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

Visual Studio的最新三个版本(2010、2008和2005)都使用.NET XslCompiledTransform XSLT处理器。XslCompiledTransform不实现任何EXSLT函数,除了
common:node-set()

我认为在VisualStudio中没有一种简单自然的方法来使用其他XSLT处理器,即使有一些技巧可以做到这一点,在这种情况下也无法进行XSLT调试

最后,EXSLT通常提供一些EXSLT函数的有限XSLT实现。当然,这样做的功能和方便性要小得多,但你可以走这条路

我个人的建议是开始使用XSLT 2.0,它比XSLT 1.0强大得多,几乎不需要在XSLT 2.0应用程序中使用EXSLT

当然,VS中不支持XSLT2.0,但是还有其他优秀的IDE,比如oXygen,它提供了优秀的XSLT2.0和XQuery调试器


更新:您可以使用EXSLT的第三方实现进行XslCompiledTransform:the

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

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


谢谢您的回答!我很想使用XSLT2.0,但我的客户强迫我只使用Microsoft技术。@Peter:不客气。请看我答案的更新。这项工作是6-7年前完成的,我已经完全忘记了,尽管我编写了“集合”函数实现。。。当然,VS本身并不了解EXSLT,不会为这些函数提供intellisense。我实际上使用的是EXSLT.NET,我只是想知道是否可以在VS XSLT调试器中使用它。谢谢你提供的信息,不是这样的。