4

我一直在使用 Spring.Net IoC 容器,并且可以使用它来注入 type 的属性,IListIList<T>我对如何注入 type 的属性有点困惑string[]

XSD 中似乎没有<array>定义元素,并且 using<list> <value> </list>也不起作用。

如果有人可以发布我需要使用数组为属性注入的xml,将不胜感激

4

1 回答 1

7

文档中所述,您可以将字符串数组作为逗号分隔的字符串注入(如果需要,不确定在字符串中转义实际逗号的语法是什么)。换句话说,您的配置看起来像这样:

<object id="MyObject" type="Blah.SomeClass, Blah" >
    <property name="StringArrayProperty" value="abc,def,ghi" />
</object>

string[]如果您需要更复杂的东西(例如,如果您正在从其他参考中查找单个值而不是对它们进行硬编码),则使用以下语法手动构造 a也可以:

<object id="TestStrArr" type="string[]" >
    <constructor-arg value="3" />
    <property name="[0]" value="qwe" />
    <property name="[1]" value="asd" />
    <property name="[2]" value="zxc" />
</object>

<object id="MyObject" type="Blah.SomeClass, Blah" >
    <property name="StringArrayProperty" ref="TestStrArr" />
</object>
于 2009-07-24T03:13:09.957 回答