我最近参与了一个大型项目,我对 Unity 和 IOC/DI 的经验很少,我正在寻找关于在 Unity 容器中定义实例时如何创建实例的说明。
给定以下代码;
//统一配置
container.RegisterAsSingleton<IService, Service>();
//基本控制器类中的引用
private readonly IService _Service;
protected DefaultController(IService Service)
{
_Service = Service;
}
protected string UseService(string id)
{
return _Service.Method(id);
}
我是否需要使用类似的东西(在 MVC 解决方案中)初始化一个实例;
_Service = DependencyResolver.Current.GetService<IService>()
;
还是会在第一次调用 Service 方法时创建一个实例?
_Service.Method(id);
如果需要,我正在尝试找出放置此代码的最佳位置。