Unity依賴注入

2022-04-09 20:34:12 字數 1324 閱讀 4567

1、在westjob.data.factory空間裡面新增乙個介面

namespace westjob.data.factory

}

2、在westjob.data.sqlserveraccess空間裡面新增乙個類

namespace westjob.data.sqlserveraccess

}}

3、在web.config裡面新增節點

3.1、先在configsections節點下宣告乙個testsection的節點

3.2、然後在下面定義這個節點的內容

4、最後就可以開始使用了

iunitycontainer container = new unitycontainer();

unityconfigurationsection unitconfig =

configurationmanager.getsection("testsection") as unityconfigurationsection;

unitconfig.configure(container, "testcontainer");

這樣就可以順利的引用了,但是我在使用的過程中老是報錯

the type name or alias sqlservercontext could not be resolved. please check your configuration file and verify this type name.

或者是給定程式集名稱或基本**無效

我仔細核對webconfig裡面的命名空間,發現都沒問題。後來發現原來是依賴注入的時候類名都在webconfig裡面指定的,在**裡面沒有指定類名,編譯的時候不會報錯。但其實該引用的程式集都沒有引用到。

再補上兩行類名的**開發環境就能識別到錯誤了

iunitycontainer container = new unitycontainer();

unityconfigurationsection unitconfig =

configurationmanager.getsection("testsection") as unityconfigurationsection;

unitconfig.configure(container, "testcontainer");

itesta aa = container.resolve();

var value = aa.returnvalue();

itesta和testa這兩個型別在程式集都沒有引用,只要引用了對應的程式集就ok了。

Unity的依賴注入

unity允許在構造乙個型別例項時對constructor property method進行依賴注入。比如ilogger的實現型別mylogger有乙個屬性logwritter,型別是textwriter。它依賴乙個名為logwriter的型別註冊,ilogger和mylogger的定義如下 1 ...

理解依賴注入(IOC)和學習Unity

ioc 英文全稱 inversion of control,中文名稱 控制反轉,它還有個名字叫依賴注入 dependency injection 作用 將各層的物件以松耦合的方式組織在一起,解耦,各層物件的呼叫完全面向介面。當系統重構的時候,的改寫量將大大減少。理解依賴注入 當乙個類的例項需要另乙個...

spring 依賴注入 Spring依賴注入

依賴注入 dependency injection,簡稱di 與控制反轉 ioc 的含義相同控制反 在使用spring框架之後,物件的例項不再由呼叫者來建立,而是由spring容器來建立,spring容器會負責控制程式之間的關係,而不是由呼叫者的程式 直接控制,這樣控制權由應用程式轉移到了sprin...