2013-02-07 8 views
8

ich verwende in einer asp.net Web-api Projekt ninject und haben damit begonnen, diese intermittierende ninject Fehler zu erhalten:Fehler beim Laden des Ninject Komponente ICache

"Fehler beim Laden Ninject Komponente ICache Eine solche Komponente ist in den Kernel registriert Komponentenbehälter "

ich verwende.

  • Ninject 3.0.1.10
  • Ninject.MVC3 3.0.0.6
  • Ninject.Web.Common 3.0.0.7

Sie sind alle gebracht in meinem Projekt mit NuGet ich meine Module in IocConfig.RegisterIoc laden und haben keine weiteren Änderungen oder Verbesserungen vorgenommen.

Es kann nicht verwandt sein, aber das Problem trat ungefähr zu der gleichen Zeit auf, als ich begann, IKernel in einen meiner Konstruktoren zu injizieren. Ich habe dafür keine Bindung eingerichtet, nachdem ich vom "speziellen Resolver" gelesen habe.

Ich habe hier durch eine Reihe von ähnlichen Fragen lauten: in jedem dieser Fälle

Ninject + "Error loading Ninject component ICache"

Ninject and ChildKernel in MVC3 project: "Error loading Ninject component ICache"

Randomly-Occurring Ninject Exception: "Error loading Ninject component ICache"

Obwohl die OP den gleichen Fehler wie mich hat der Lösung ist nicht angemessen - ich erstelle keine Kindkerne und ich benutze nicht die Bug-Version von Ninject.

Antwort

5

Gefunden die Lösung und dachte, ich würde teilen.

Das Problem war, dass ich mit Ninject.MVC3, das scheint falsch Paket für Web-API verwendet wurde.

Stattdessen muss ich Ninject.Web.WebApi-RC-Paket verwenden, wie von diesem Beitrag beschrieben:

http://www.eyecatch.no/blog/2012/06/using-ninject-with-webapi-rc/

Schritte I für eine Korrektur gefolgt sind

  • Uninstalled Ninject.MVC3 und Ninject.Web.Common
  • löschen Sie alle Ninject-Dateien aus dem App_Start-Ordner.
  • Ninject.Web.Common und Ninject.Web.WebApi-RC von nuget
  • laden meine Module in NinjectWebCommon.RegisterServices()
installieren
Verwandte Themen