2014-01-24 48 views
1

我已經得到了以下錯誤:ASP.NET MVC錯誤加載Ninject組件ICACHE

System.InvalidOperationException: Error loading Ninject component ICache 
No such component has been registered in the kernel's component container. 

使用下面的NuGet包:

  • Ninject 3.0.1.10
  • Ninject.MVC3 3.0.0.6
  • Ninject.Web.Common 3.0.0.7
  • ASP.NET MVC 4.0.30506.0

綁定使用WebActivator和Ninject引導程序(默認設置)進行設置。

看來這個錯誤曾經是Ninject 2.2.1.0 and Ninject.MVC3 2.2.1.0 were released之前的一個問題,這篇文章是相似的,但我沒有使用Web.Api Error loading Ninject component ICache

可能值得注意的是我有兩個內核。主內核在應用程序啓動時創建,並在關閉時處理。我們在啓動時使用的第二個內核,幾乎立即被處理,因爲它不再需要。那麼這可能會導致這個問題?

+0

您使用的是WebApi嗎?可能與此有關:http://stackoverflow.com/questions/14757142/error-loading-ninject-component-icache – Roger

回答

1

事實證明,這個問題是由於有兩個內核的事實。他們肯定是以某種方式衝突的,我沒有確定原因並選擇刪除第二個內核。

+0

你將如何去弄清楚如何創建2個內核? – Maslow

+0

就我而言,我只是尋找'StandardKernel'的用法 –

3

在我的情況下,這是因爲我正在關注someoneSystem.Web.Http.Dependencies.IDependencyResolver Ninject包裝器,其中Dispose()方法將調用在內核上處置。

相關問題