我正在一個MVC項目,我們動態加載DLL的。在這些DLL中是其他MVC項目(我們稱之爲模塊)。我們這樣做是爲了支持模塊的即插即用,在不發佈整個項目的情況下更新它們。無法設置@model類在動態加載的DLL
我們有多個簡單的模塊可以工作,現在我正面臨着我正在開發的一個新模塊的問題。
在模塊的所有視圖中,我們定義模型如@model dynamic
。但是,因爲我想用@Html.TextBoxFor()
that's不允許否則會導致
表達式樹不能包含一個動態操作
所以我想,沒問題我就改變@model ModuleNameSpace.ClassName
但現在整個視圖不能再加載...異常說:
在'〜/ PATH_TO_VIEW_FILE'找到的視圖未創建。
隨着@model dynamic
該視圖正在工作,當我創建一個單獨的項目,它也與@model ModuleNameSpace.ClassName
。所以這似乎是一個問題,因爲我們添加動態組件?
模塊被加載這樣的:
System.Reflection.AssemblyName name = System.Reflection.AssemblyName.GetAssemblyName(module.FullName);
System.Reflection.Assembly assembly = System.Reflection.Assembly.Load(name);