Unity的依賴注入

2021-09-06 05:40:51 字數 1631 閱讀 7004

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

1

public

inte***ce

ilogger24

}56public

sealed

class

mylogger : ilogger

79 }

首先註冊乙個名為logwriter的型別:

<

unity

xmlns

=」>

=」mscorlib,

2.0.0.0, culture

=neutral,

publickeytoken

=b77a5c561934e089″

/>

<

container

>

<

register

name

=」logwriter」

type

=」system.io.textwriter」

mapto

=」system.io.stringwriter」>

/>

register

>

container

>

unity

>

再註冊ilogger和它的實現:

<

register

type

=」unitytest3.ilogger,

unitytest3″ mapto

=」unitytest3.mylogger,

unitytest3″

/>

現在為mylogger新增property logwriter的依賴,設定dependencyname為logwriter、dependencytype為system.io.textwriter:

<

register

type

=」unitytest3.ilogger,

unitytest3″ mapto

=」unitytest3.mylogger,

unitytest3″

>

<

property

name

=」logwriter」

dependencyname

=」logwriter」

dependencytype

=」system.io.textwriter」

/>

register

>

編寫**獲取ilogger:

1 iunitycontainer unitycontainer = new

unitycontainer();

2unitycontainer.loadconfiguration();

34 ilogger logger = unitycontainer.resolve();

Unity依賴注入

1 在westjob.data.factory空間裡面新增乙個介面 namespace westjob.data.factory 2 在westjob.data.sqlserveraccess空間裡面新增乙個類 namespace westjob.data.sqlserveraccess 3 在we...

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

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

spring 依賴注入 Spring依賴注入

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