Asp.Net MVC SingleServiceResolver类剖析
SingleServiceResolver一般用于类工厂创建和注入点接口留白。类工厂创建比如Controller控制依赖于此类的创建,注入点留白实质上是依赖注入所对外预留的接口。
以第二个特性为例。
在激活Controller的时候,IhttpHandler的继承类MvcHandler(在.Net MVC里面就用的这个Handler管道)里面会调用ControllerBuilder.GetControllerFactory();获取到Controller的类工厂。ControllerBuilder
返回的是一个属性 return ControllerBuilder.Current 。这个Current是ControllerBuilder实例化类的静态变量。