我有一個VB.NET解決方案,它使用MVC 5和MEF給我一個可插入的Web項目。MEF與MVC 5,混合C#和VB.NET
它有一個「主機」項目,運行並加載所有動態DLL,使用MEF,然後加載控制器,一切都很好。我添加一個新項目,添加插件註冊並使用MEF導出控制器。巴姆,項目獨立,適合我的框架。
但是,我想現在添加一個C#項目。我已經將cshtml的東西添加到我的自定義ViewEngine中,並將視圖/ dll複製到主機的插件目錄,但是,在呈現視圖時,出現此錯誤:
編譯器錯誤消息:CS0234:命名空間名稱CSharpTest'不存在命名空間「MVCMEFPluggable」(?是否缺少程序集引用)
上線28和錯誤存在:使用MVCMEFPluggable.CSharpTest
;
這將轉到在ASP.NET Temporary Files文件夾中創建的臨時文件。在VB.NET和C#中,我可以記住關於名稱空間差異的一些事情,但我無法弄清楚如何正確呈現視圖。
任何見解?
只需添加上成功運行,通過調試器,控制器被拾取並呈現得很好,它只是當它返回視圖,當我得到該錯誤,所以我懷疑這是非常嚴重的東西:) – user3036342
你能告訴我們一些代碼?如果你想要一些:) –
這是相當複雜的,所以發佈代碼將是瘋了真的。最後,它在控制器的返回視圖行上出現錯誤。正如我所提到的,所有東西都能正確拾取,只是渲染出現問題的視圖。在臨時文件中有一個「使用」行,如所描述的那樣會導致錯誤。不知道爲什麼,我懷疑這是與名稱空間有關,但我需要知道爲什麼我才能真正找出解決方案 – user3036342