2013-04-29 27 views
0

我正在Umbraco 4.8下開發。找不到與命名空間'urn:UmbracoHelper'相關聯的腳本或擴展對象

我試圖從我的XSLT訪問一個類來從中檢索一些東西。 該課程名爲UmbracoHelper。 我已經添加以下到我的XSLT的頂部:

  • 的xmlns:UmbracoHelper = 「甕:UmbracoHelper」
  • 排除對結果的前綴 「UmbracoHelper」

但現在,當我想調用函數如下:

<xsl:for-each select="$GalleryImages/nodeId"> 
<xsl:variable name="myNode" select="UmbracoHelper:GetNode(.)"/> 
</xsl:for-each> 

我面對這個錯誤:

找不到與命名空間'urn:UmbracoHelper'關聯的腳本或擴展對象。

我在這裏錯過了什麼?

回答

2

總之:寫你的代碼和構建(UmbracoHelper)。將程序集添加到bin文件夾。確保您在xsltextensions.config中添加了對程序集的引用。然後通過你的XSLT中的urn參考。

請參見:http://www.nibble.be/?p=60

1

其實同時喬納森的答案是正確的,該方法是稍微過時。

更簡單的方法是在您的解決方案中添加對umbraco.dll的引用。然後,您可以使用[RestExtension("TestAlias")] [XsltExtension]屬性修飾您的課程,如here所示。然後,您可以將.cs文件放到App_Data文件夾中,或者編譯它並將dll文件放到Umbraco安裝的bin目錄中。這種方法的優點是不需要自己編輯配置文件。

+0

我試過了,用UmbracoHelper替換了TestAlias,但仍然不能正常工作。 我錯過了什麼嗎? – 2013-04-30 14:46:19

+0

您是否也添加了[XsltExtension]裝飾? – Andrei 2013-05-06 19:49:19