1

有没有办法使用 NInject 约定来绑定具有与实现它的具体类不同数量的类型参数的泛型接口?

例如:

    public interface IRepository<T1, T2>
    {
        ...
    }
    public class Repository<T1, T2, T3> : IRepository<T1, T2>
    {
        ...
    }
4

1 回答 1

0

您无法直接执行此操作,但解决方案相当简单:创建一个具有两个继承自 的类型参数的新类型Repository<T1, T2, T3>,如下所示:

class Rep<T1, T2> : Repository<T1, T2, ActualType>
{
}

这种类型可以直接映射到 aIRepository<T1, T2>而不会留下任何未解析的泛型类型参数。

于 2013-01-27T21:37:21.433 回答