使用Spring.Net对Web页面进行依赖注入
? 今天看到這篇文章 Unity&WebForm(1): 自定義IHttpHandlerFactory使用Unity對ASP.NET Webform頁面進行依賴注入,這是一個很好的思路,自定義IHttpHandlerFactory結合Unity來對web頁面進行依賴注入,大家可以去看看。但是回復中有人提出了問題,對于web site類型的站點,在配置文件中無法指定要注入類型和所在的程序集,也就無法使用Unity。
? 現在的Unity并不支持對web頁面的依賴注入,上文的作者也是利用一定的技巧來解決的。 其實Spring.Net已經支持對Web頁面的依賴注入,而且并不用修改代碼,只需要在配置文件中配置就行。而且它還支持對自定義的httpHandler,httpModule的依賴注入,不能不說它的功能強大。
? 下面具體介紹如何使用Spring.Net:
1. 添加Spring的SectionGroup
<sectionGroup?name="spring">??????<section?name="context"?type="Spring.Context.Support.WebContextHandler,?Spring.Web"/>
??????<section?name="objects"?type="Spring.Context.Support.DefaultSectionHandler,?Spring.Core"/>
</sectionGroup>?
2. 添加HttpHandler配置
<add?verb="*"?path="*.aspx"?type="Spring.Web.Support.PageHandlerFactory,?Spring.Web"/>3. 添加HttpModule配置(如果不添加的話,會有異常)
<add?name="Spring"?type="Spring.Context.Support.WebSupportModule,?Spring.Web"/>4. 最后配置如何依賴注入
<spring>????<context>
??????<resource?uri="config://spring/objects"/>
????</context>
????<objects?xmlns="http://www.springframework.net">
??????<object?type="Default.aspx">
????????<property?name="Service"?ref="myService"/>
??????</object>
??????<object?id="myService"?type="Services.MyService,?Services">
??????</object>
????</objects>
??</spring>
object的type屬性表明你要對哪個頁面進行注入,property的name屬性是該頁面中被注入的Property的名字,ref就指向了你想注入的實際類型。
由此可見,使用Spring.Net可以很方便的對web頁面進行依賴注入。
轉載于:https://www.cnblogs.com/blusehuang/archive/2008/06/11/1217628.html
總結
以上是生活随笔為你收集整理的使用Spring.Net对Web页面进行依赖注入的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 蓝桥杯第九届省赛JAVA真题----螺旋
- 下一篇: 如何获取系统的临时目录路径?