将构造函数详细信息添加到Unity配置

时间:2013-10-30 07:44:35

标签: c# unity-container

我们如何在Unity配置文件中指定多个构造函数。如果类实现如下:

 public abstract class classB : ClassA
{

private classC c;
protected ClassB()
    {
        c = new classC();

    }

    protected classB(classC value)
{
        c = value;

    }
 }

在Unity配置文件中,我们可以指定类似的内容。

<type name="ClassB" type="ClassB">
      <lifetime type="PerWebRequest" />
      <typeConfig extensionType="Microsoft.Practices.Unity.Configuration.TypeInjectionElement, Microsoft.Practices.Unity.Configuration">
        <constructor>
        </constructor>
      </typeConfig>
    </type>

但是这里如何指定另一个构造函数,并在默认构造函数的情况下为属性赋值?

1 个答案:

答案 0 :(得分:0)

非常确定此元素仅指定在具有多个构造函数时要调用的特定构造函数(One)。 见MSDN

我想这类似于程序化方法 - [InjectionConstructor],你告诉Unity使用用属性指定的构造函数。