1

我正在尝试将 Spring.NET 与 C# 应用程序一起使用来填充复杂类型的参数数组(params 关键字)构造函数参数(称为 SecretCode,它恰好是枚举类型。)

有人可以帮我指向文档以配置 XML 文件来执行此操作吗?

作为参考,以下是相关的代码片段:

public class MyValueSet<T> where T: struct
{
  public MyValueSet(params T[] values) {...}
} 

public class DerivedClass : MyValueSet<SecretCode> {...}

public enum SecretCode {...}

我试图用 Spring.NET 配置文件替换的硬编码代码是(足够接近)这个:

var something = new DerivedClass(SecretCode.One, SecretCode.Two, SecretCode.Fifty-Two);

想法?

4

1 回答 1

1

我发布这个问题是为了分享我想出的答案,并看看是否有更深入了解 Spring.NET 的人有更好的答案。

我最终得到的配置是这样的:

<object id="myobject" type="DerivedClass, Assembly.Containing.The.DerivedClass">
  <constructor-arg name="values">
    <list element-type="SecretCode, Assembly.Containing.The.SecretCode.Enumeration">
      <value>One</value>
      <value>Two</value>
      <value>Fifty-Two</value>
    </list>
  </constructor-arg>
</object>
于 2009-11-03T18:59:55.887 回答