Ninject:如何绑定具有多个类型参数的开放泛型

本文关键字:类型参数 泛型 何绑定 绑定 Ninject | 更新日期: 2023-09-27 18:02:56

我正在使用Ninject 2.2,并且我正在尝试为接受两个类型参数的开放泛型设置绑定。根据qes的回答,将IRepository<T>绑定到Repository<T>的正确语法是:

Bind(typeof(IRepository<>)).To(typeof(Repository<>));

如果IRepository只接受一个类型参数,上面的语法可以完美地工作,但如果它接受更多类型参数,则会中断(给出Using the generic type 'Repository<T,U>' requires 2 type arguments编译时错误)。

如何绑定IRepository<T,U>Repository<T,U> ?

谢谢。

Ninject:如何绑定具有多个类型参数的开放泛型

Bind(typeof(IRepository<,>)).To(typeof(Repository<,>));

试试…