2012-07-23 18 views
0

當我使用.NET的XslCompiledTransform執行XSLT轉換。當我嘗試使用我使用Altova的MapForce的工具自動生成的XSLT文件,我得到異常:XslCompiledTransform異常使用的Altova MapForce的生成XSLT文件

XSL conversion is failed: Cannot find the script or external object that implements prefix 'http://www.altova.com/xslt-extensions'. 

從XSL樣式表的定義:

<xsl:stylesheet ... xmlns:ns0="http://www.altova.com/xslt-extensions" ... > 

...看來,Altova的定義它自己的擴展功能,XSLT,和XslCompiledTransform不知道如何找到它們。我怎樣才能讓XslCompiledTransform承認這些外部的功能呢?

回答

2

我不知道MapForce的任何細節,但我知道,人們成功運行MapForce的生成樣式表可撒克遜。也許(我在猜測)如果你問mapforce生成2.0樣式表,那麼它不需要任何Altova擴展,然後你可以用2.0處理器(如Saxon或XmlPrime)運行樣式表。 (順便提一句,微軟已經明確表示他們並不打算將XsltCompiledTransform升級到XSLT 2.0,所以你使用的是死衚衕的技術,Saxon,Altova和XmlPrime都在向前發展; Saxon和XmlPrime不僅支持XSLT 2.0,而且還支持3.0的大塊代碼,這會讓您錯失許多生產力優勢。)