日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

MVC3 中使用Unity实现依赖注入

發布時間:2023/12/2 c/c++ 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MVC3 中使用Unity实现依赖注入 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

  前言:前段時間一直在研究依賴注入,不過不是在MVC框架中使用,今天突然想到在MVC中使用Unity實現依賴注入,一時慌了,不知道從何下手,接著就是網上不停的找資料,下面我把我找到的資料分享下,也把我的想法說下,如果大神們有什么更好的實現方式,請多多指教啊。

?  什么是Unity? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

  Unity是一個輕量級的可擴展的依賴注入容器,支持構造函數,屬性和方法調用注入。Unity可以處理那些從事基于組件的軟件工程的開發人員所面對的問題。構建一個成功應用程序的關鍵是實現非常松散的耦合設計。松散耦合的應用程序更靈活,更易于維護。這樣的程序也更容易在開發期間進行測試。你可以模擬對象,具有較強的具體依賴關系的墊片(輕量級模擬實現),如數據庫連接,網絡連接,ERP連接,和豐富的用戶界面組件。例如,處理客戶信息的對象可能依賴于其他對象訪問的數據存儲,驗證信息,并檢查該用戶是否被授權執行更新。依賴注入技術,可確保客戶類正確實例化和填充所有這些對象,尤其是在依賴可能是抽象的 。

  如何獲取Unity? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

  你可以下載一個Nuget安裝,通過Nuget獲取。

  MVC中如何使用Unity? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

  在MVC中使用Unity需要實現兩個接口:IDependencyResolver和IControllerActivator.

  1、需要實現IDependencyResolver接口的GetServices和GetService,分別是注冊單個會這多個注冊服務。IDependencyResolver接口的實現應該委托給底層的依賴注入容器提供注冊服務請求的類型。當有沒有注冊的服務請求的類型,ASP.NET MVC框架預計這個接口的實現返回GetService為空,并從GetServices返回空集合。

  下圖展示IDependencyResolver接口的實現:

?

  實現這兩個方法,是為了返回我們需要的Service或者object.

  ASP.NET MVC 3已經推出了一個新的接口IControllerActivator,讓您激活自定義的行為控制器,并且可以使用依賴注入。創建一個派生自IControllerActivator 接口的一個自定義的控制器。

  做好這兩個類之后,早Global.cs里面配置一下。

  

  接著在Application_Start里面寫入

  

  具體的絲路是:首先通過GetUnityContainer方法獲取container,并通過SetResolver來獲取自己的container實例。

  在Controller只要添加一個[Dependency]特性,就會實現注入。

?

?

轉載于:https://www.cnblogs.com/xuguoming/articles/3196051.html

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的MVC3 中使用Unity实现依赖注入的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。