1.Nuget下载Castle.Winsor
2.自定义ControllerFacotry,继承 DefaultControllerFacotry
(Controller Factory作用:1.根据不同请求路由到对应的Controller,并创建实例 2.controller使用完毕后释放资源)
2.定义installer,继承IWindsorInstller,实现接口中Install方法,在其中注册我们需要的服务
3.在Application_Start中设置自定义controller factory,在controllerfactory构造中传入已注册完服务后的WindsorContainer,
FromAssembly.This()方法会扫描当前程序集中继承了IWinsorInstaller的类,并实例化,然后执行每个类下面的Installer()
Kernel:会暴露windsorContainer中所有实现的服务
4.以上,castle windsor配置结束,实际使用中只需要在调用方声明一个接口的属性,castle便可以自动注入并实例化
注:接口定义必须是public,声明接口属性时也必须是public