내 경우는IoC를 사용할 때 개체 처리를 어떻게 관리합니까?
// normal explicit dispose
using (var dc = new EFContext)
{
}
Ninject에 2입니다하지만 가끔은 내가 또는 함수 호출 사이에 더 이상 상황을 유지해야합니다. 그래서 IoC 범위를 통해이 동작을 제어하려고합니다. 당신이 IContext
의 인터페이스를 통해 제어 할 수있는 경우
// if i use this way. how do i make sure object is disposed.
var dc = ninject.Get<IContext>()
// i cannot use this since the scope can change to singleton. right ??
using (var dc = ninject.Get<IContext>())
{
}
샘플
Container.Bind<IContext>().To<EFContext>().InSingletonScope();
// OR
Container.Bind<IContext>().To<EFContext>().InRequestScope();
중복 : http://stackoverflow.com/questions/987761/how-do-you-reconcile-idisposable-and-ioc 링크 – TrueWill
감사합니다. 위의 경우 싱글 톤으로 범위를 변경하면 어떻게됩니까? 처분. 맞아, 다음 번에 그 함수를 호출하면 예외가 생깁니다. – Aval