C# 如何解析泛型类<;T>;(它的构造函数参数也是通用的…例如:Param<;T>;Param)与Unity容器??救命啊!谢谢 接口{} 类:接口 { 公共类(IInterfaceParam){} } 接口IIinterfaceParam{} 类InterfaceParam:IInterfaceParam{}

C# 如何解析泛型类<;T>;(它的构造函数参数也是通用的…例如:Param<;T>;Param)与Unity容器??救命啊!谢谢 接口{} 类:接口 { 公共类(IInterfaceParam){} } 接口IIinterfaceParam{} 类InterfaceParam:IInterfaceParam{},c#,dependency-injection,constructor,interface,unity-container,C#,Dependency Injection,Constructor,Interface,Unity Container,如何在unity.config xml文件中进行配置 下面是我的配置: interface Interface<T>{} class Class<T>:Interface<T> { public Class(IInterfaceParam<T> param){} } interface IInterfaceParam<T>{} class InterfaceParam<T>:IInterfaceParam&

如何在unity.config xml文件中进行配置

下面是我的配置:

interface Interface<T>{}

class Class<T>:Interface<T>
{
      public Class(IInterfaceParam<T> param){}
}

interface IInterfaceParam<T>{}

class InterfaceParam<T>:IInterfaceParam<T>{}


但是我得到了一个异常:InvalidOperationException:配置不正确,类型类`1没有接受名为param的参数的构造函数。为什么?

您需要注册特定类型,而不是泛型
IInterfaceParam
,而不是
IInterfaceParam
。谢谢,我有点……但还是有点困惑,我会再试一次^ ^@howcheng
  <register type="IInterfaceParam`1" mapTo="InterfaceParam`1" name="paramDefault">
  </register>

  <register type="Interface`1" mapTo="Class`1">
    <constructor>
      <param type="IInterfaceParam`1" name="param">
        <dependency name="paramDefault"></dependency>
      </param>
    </constructor>
  </register>