我正在使用Ninject DI容器。我有两个

public interface IRepository<T> where T : AbstractEntity<T>, IAggregateRoot
{
    // methods signatures
}

public class Repository<T> : IRepository<T> where T : AbstractEntity<T>, IAggregateRoot
{
    // implementations
}


然后我试图将它们绑定在一个单独的模块中

public class DataAccessModule : Ninject.Modules.NinjectModule
{
    public override void Load()
    {
        this.Bind<IRepository<>>().To<Repository<>>();
    }
}


其中this.Bind<IRepository<>>().To<Repository<>>();不被识别为语句。

如何进行绑定?

最佳答案

here抓取了此作品。看起来对他们有用:

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

关于c# - 如何用约束绑定(bind)泛型类型,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9002426/

10-10 11:49