2011-06-01 76 views
1

我是企業庫的新手。我想問一些問題,任何幫助將不勝感激。@Enterprise Library Unity屬性注入

1,如何部署注入實例屬性。

public class MyObject 
{ 
    public MyObject(string Title) 
    { 
     ///... 
    } 
    public MyObject(InjectObject injectObject) 
    { 
     ///... 
    } 
    public InjectObject InjectObject{get;set;} 
    public List<string> MyList {get;set;} 
    public string Title {get;set;} 
} 

Now I know how to inject the default value to the title property. But how to do 
with 
the InjectObject and the MyList. 

<register type="IMyObject" mapTo="MyObject"> 
    <property name="Title" value="MyFirstObject"> 
    </property> 
    //But how to assign or instance the InjectObject and the MyList 
</register> 
But how to assign or instance the InjectObject and the MyList 

<register type="IMyObject" MapTo=「MyObject」> 
    <constructor> 
    <param type="string" name="title" value="MyFirstObject"/> 
    </constructor> 

2,如何提供一個類實例構造 ,我知道如何分配一個字符串值來構造。但是如何轉移 一個類的實例。

我怎樣才能分配一個類實例給構造函數,以及如果我有兩個構造函數方法來部署。

謝謝你的幫助。 最好的問候。

Daivd

回答

1

首先,更喜歡構造函數注入屬性注入。

要將類型注入構造函數,請使用<dependency [name=""] />屬性。

例如:

<register type="IMyObject" MapTo=「MyObject」> 
    <constructor> 
     <param name="injectObject"> 
      <dependency /> 
     </param> 
    </constructor> 
<register> 

<register type="InjectObject" /> 

UPDATE:

要添加陣列,你需要配置這樣的注射值:

<param name="parmName"> 
    <array> 
     <value value="firstValue" /> 
     <dependency /> 
     <value value="some other value" /> 
    </array> 
</param> 

時退房Unity configure schema所有詳細說明如何做到這一點。

+0

Hi Rory,謝謝你的建議,我可以成功注入類實例屬性。你可以給我一些想法如何注入list屬性或arraylist屬性。謝謝。 – David 2011-06-01 09:38:19

+0

謝謝羅裏。現在我可以與類實例特性和數組進行交互。 – David 2011-06-02 03:11:33

相關問題