依赖注入容器 Castle windsor的使用
生活随笔
收集整理的這篇文章主要介紹了
依赖注入容器 Castle windsor的使用
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2019獨角獸企業重金招聘Python工程師標準>>>
????? ?在Castle中包含了一組開發框架,它里面的IOC容器是Windsor。在Windsor中提出了自動裝配的概念,由容器來自動管理組件之間的依賴關系,無需用戶去編寫XML配置文件或者通過Attribute來指定容器之間的依賴關系。這樣在使用上非常的簡單,同時也帶了一些問題,作為開發人員的我們無法控制組件的依賴關系。
???? ? 簡單使用:
???????????? ?1.添加Castle.Core.dll,Castle.Windsor兩個引用。
????????????? 2.創建被用于注入的接口和其實現。
????????????? 3.在程序的入口處(winform在Main函數下,Web Application在Application_start()下)添加如下代碼
????????????IWindsorContainer?container?=?new?WindsorContainer();//下面為你要注冊的組件,即注入容器的配置。//“WindowsFormsApplication1”?為程序集名稱,Form為要注冊類的基類container.Register(AllTypes.FromAssemblyNamed("WindowsFormsApplication1").BasedOn<Form>().WithService.DefaultInterfaces());//“Tasks”為你的程序集名稱,“Service”為你的“IService”接口的實現類container.Register(AllTypes.FromAssemblyNamed("Tasks").Pick().If(t?=>?t.Name.EndsWith("Service")).WithService.DefaultInterfaces());???????????? 4.在調用出實現注入,并調用。
????????????????????1)屬性/Setter注入:? ?????????????
????????public?ITestService?TestService?{?get;?set;?}TestService.GetMethod();//調用TestService中的GetMethod()方法????????????????????2)構造器注入:
????public?partial?class?Form1?:?Form{private?ITestService?_service;public?Form1(ITestService?testService){InitializeComponent();_service?=?testService;_service.GetMethod();//調用TestService中的GetMethod()方法}}轉載于:https://my.oschina.net/MerylLiu/blog/214492
總結
以上是生活随笔為你收集整理的依赖注入容器 Castle windsor的使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 创纪录:未拆封初代苹果 iPhone 拍
- 下一篇: 折叠屏手机鼻祖 柔宇科技欠款百万成老赖: