2011-09-26 89 views
1

我使用Ninject作爲我的MVC控制器工廠,但我也加載通過MEF某些航線和控制器,這些控制器必須能夠與Ninject註冊自己:天冬氨酸MVC 3與NinjectHttpApplication和MEF

Bind<SomePluginController>.ToSelf(); 

因此可以選擇動態添加的路線。

到目前爲止,我能想到的唯一方法就是暴露web應用程序之外的內部內核,但是這看起來有點令人討厭,並且NinjectHttpApplication.Kernel似乎已經過時。

有沒有其他人設法做到這一點?

+1

你能提供一個示範項目來演示這個問題嗎?如果你這樣做,我會看看。 –

回答

1

你得到的問題是MEF被設計成組成一組未知部分,而Ninject正在處理明確的組件註冊。你不能輕易從MEF中獲取類型信息,因爲它全部在運行時處理,而不是編譯時。

我認爲你可能需要做的是構建一個支持Ninject和MEF的複合控制器工廠。

相關問題