XML 配置中的构造函数列表/数组类型参数



如何使用XML配置将数组/列表参数传递给类构造函数?

如果我想传递标量值,我使用以下配置:

<components name="0">
        <type>XXX, XXX</type>
        <services name="0" type="XXX, XXX" key="YYY"/>
        <injectProperties>true</injectProperties>
        <instanceScope>single-instance</instanceScope>
        <parameters>
            <param1name>param1value</param1name>
            <param2name>param2value</param2name>
        </parameters>
</components>

我的类的构造函数需要一个 IEnumerable 类型的参数。

此致敬意阿南

简短版本:目前不支持。相关问题在这里。

我已经尝试过使用 JSON 配置,但参数没有传递给构造函数。我的配置看起来像这样:

     "parameters":{
        "constructorParamName":["stringValue1", "stringValue2"]
     }

构造函数是:

public MyClassConstructor(IList<string> constructorParamName = null) 

不幸的是,"constructorParamName"值总是空的。

更新:

我发现问题是由IContainer.ResolveNamed 方法引起的。此方法从配置文件传递属性,但不传递构造函数参数。

最新更新