3 回答
TA贡献1817条经验 获得超14个赞
1. IoC容器的一些基本认识要知道:初始化应该在 Application_Start启动时初始化了,注册映射由编程和配置文件,大多数选择配置文件,里面有 HomeController以及 HomeController构造函数INewsService 等类型映射。
2.IoC使用:既能以及初始化了,类型都已经注册了,我们就要使用IoC容器,它就是用来创建对象的,如创建HomeController,应该会有 IoC.Resolve<IController>(......)等解析对象的代码,如果你不知道 它解析时为什么参数会有值,再看看IoC方面的一些基本知识。
3.什么地方会使用IoC容器:就是控制反转,什么控制反转,就是创建对象的这个控制权转交给IoC容器了,如,你的HomeController 什么时候会创建,默认的话,应该是mvc的DefaultControllerFactory创建,是没有参数的构造函数,你的代码里是有参数的构造函数,又要用到IoC来创建,应该有 重写 创建控制器对象的代码,IoC应该会在这个重写的地方出现。
如: public class ControllerFactoryTest : DefaultControllerFactory
{
protected override IController GetControllerInstance(RequestContext requestContext, Type controllerType)
{
return IoC.Resolve<IController>(controllerType);
}
}
- 3 回答
- 0 关注
- 362 浏览
添加回答
举报