1
난 NinjectHttpApplication 내 Global.asax에에 HttpAplication 상속 대체 :Ninject에 NET에서 MVC (3) 및 [를 주입] 특성 구성
public class Global : NinjectHttpApplication
{
protected override IKernel CreateKernel()
{
return Bootstrapper.CreateKernel();
}
protected override void OnApplicationStarted()
{
base.OnApplicationStarted();
DependencyResolver.SetResolver(new NinjectDependencyResolver(CreateKernel()));
Bootstrapper.Bootstrap();
}
}
그리고 내 CreateKernel 방법 :
public static IKernel CreateKernel()
{
var kernel = new StandardKernel();
kernel.Load(Assembly.GetExecutingAssembly());
return kernel;
}
내 RoleService의 [Inject] 속성을 사용하는 속성을 사용해야합니다. RoleProvider는 asp.net에 의해 시작됩니다.
모든
내가 내 Global.asax에에서 NinjectHttpApplication에서 상속 만약 내가 그 라인 필요가 없다는 말 : 이 방법을 OnApplicationStarted 내에서DependencyResolver.SetResolver(new NinjectDependencyResolver(kernel));
을하지만없는 예외가 발생 내 의존성이 NULL입니다 내 RoleProvider 서비스에서. 결국, 그 라인이 필요한가 아닌가? 내가 뭔가 잘못하고 있는거야?
NuGet 방식이란 무엇입니까? 내 응용 프로그램에 새로운 동작이 나타났습니다.이 OnApplicationStarted() 메서드의 "DependencyResolver.SetResolver (...)"행에서 RoleService가 asp.net에 의해 트리거되지 않습니다. 이유가 무엇입니까? –
역할 서비스 및 시작 방법에 대한 정보를 제공하지 않았습니다. 그래서 나는 너를 도울 수 없어. NuGet 정보 : NuGetPackage를 다운로드하면 모든 것이 설정됩니다. 또한 읽으십시오 : https://github.com/ninject/ninject.web.mvc/wiki/Setting-up-an-MVC3-application –
DLL의 TeamCity에서 다운로드했습니다 : Ninject, Ninject.Web.Common 및 Ninject.Web .MVC 버전 2.2.3. NinjectHttpApplication 클래스가 더 이상 존재하지 않습니까? 내 문제는 kernel.Inject (Roles.Provider); –