2013-03-15 86 views
0

我想使用Unity將字符串值注入到屬性中。我找不到可用的語法。在這種情況下,PutBunniesHere使用統一屬性注入注入簡單字符串

在這種情況下,錯誤是它無法將「type」識別爲值的有效屬性。我補充說,因爲它無法解決之前的類型。

類有此屬性:

[Dependency("PutBunniesHere")] 
    public string PutBunniesHere { get; set; } 

這是我使用統一的配置。

<?xml version="1.0" encoding="utf-8" ?> 
    <unity2 xmlns="http://schemas.microsoft.com/practices/2010/unity"> 
    <alias alias="IInjectMe1" type="CommonLib.IInjectMe1, CommonLib"/> 
    <alias alias="singleton" type="Microsoft.Practices.Unity.ContainerControlledLifetimeManager, Microsoft.Practices.Unity" /> 
    <container name="unity2"> 
    <register type="CommonLib.IInjectMe2, CommonLib" name="Injected2" mapTo="CommonLib.InjectMe2, CommonLib"> 
     <lifetime type="singleton"/> 
     <constructor> 
     <param name="theDependency" dependencyType="IInjectMe1" /> 
     </constructor> 
     <property name="PutBunniesHere"> 
     <value value="my bunnies" type="System.String"/> 
     </property> 
    </register> 
    </container> 
</unity2> 

回答

0

好的,解決了這個問題。在寄存器元素上再次出現名稱是一個問題。這使價值元素的價值具有不同的含義。值意味着已註冊類型的名稱,或者如果在父寄存器元素上有名稱屬性,則爲類型。取出名稱和值意味着一個值(也可能是一個類型)

Yuk。