2013-05-03 54 views
7

文檔(herehere)是明顯缺乏對模塊的引用如何解決信息:Orchard如何解決模塊中的引用?

參考分辨率

(TODO:解釋果園如何通過看「參考算出引用「部分的csproj文件,以及在每個模塊」bin「目錄中查看附加組裝二進制文件)

不幸的是,這是正是我需要的信息。我創建了一個自定義模塊,它具有對定製的內部DLL的引用。當我嘗試使用一個類從這個DLL,我得到以下異常:

未能從程序集「自定義,版本= [版本],文化= [文化]公鑰加載類型Custom.MyClass「 = [令牌]」。

所以,我的問題是這樣的:Orchard做什麼與模塊引用,有什麼特別的我需要做,讓果園拿起我的模塊的引用?

編輯:看起來好像有些更好的信息可以在this blog post及其評論中找到。但是,我的自定義程序集已存在於src\Orchard.Web\App_Data\Dependencies中,而且我仍然收到錯誤消息。

EDIT2:我們在lib文件夾中的自定義DLL的副本,所以我想引用一個而不是(因爲我們有另一個模塊,這樣做是成功的),但仍然沒有改變。

EDIT3 ::參考之前的兩個編輯,它不是從lib文件夾複製到App_Data\Dependencies文件夾。我只是將一個新的DLL添加到lib文件夾並引用它,它並沒有出現在Dependencies文件夾中。我認爲目前Custom.dll並不是取代那裏的那個,這就是爲什麼我得到了我的錯誤。但爲什麼Orchard沒有複製到Dependencies文件夾中呢?

回答

1

爲了讓Orchard使用您的自定義模塊,您需要在路徑上使用它:your_web_application_path/Modules/your_custom_module,我們使用sym鏈接來實現這一點。

然後你的主要模塊(web應用程序)應該看到你的自定義模塊。如果您要將新模塊添加到現有的果園應用程序中,則可能需要從管理面板/模塊菜單手動啓用它。對於新的安裝,你可以添加功能啓用指令到你的配方,並添加依賴主模塊.txt文件(假設你想讓你的模塊始終打開)。

另一個故障排除提示:

  • 確保你的模塊構建路徑設置爲斌/文件夾(而不是一些斌/調試等)
  • 確保你的模塊實際上是一個果園模塊(有模塊。txt文件),並在管理面板中看到/模塊
  • 確保它被啓用,新的模塊默認情況下禁用
  • 請確保引用的庫是從靜態的文件夾,我的意思是不一樣斌成才這是在清理引用重建
+0

一旦我們將引用的DLL(位於靜態文件夾中)移動到'Dependencies'文件夾中,模塊就會顯示並工作得很好。 (該模塊位於正確的位置 - 我使用orchard命令行創建它。) – zimdanen 2013-05-20 12:43:13

相關問題