我有这样的事情:

public interface IBaseService<TObject>

    public class BaseService<TObject, TRepository> : IBaseService<TObject> 
           where TRepository : IRepository<TObject>

我需要注册BaseService要IBaseService (该IRepository <>被登记)

有帮助吗?

解决方案

如果您必须像这样做,你不得不重写DefaultKernel.BuildCreationContext(或类似的东西)。

通常你在做什么,不支持,因为它是错误的,模糊的。你的是明确的,并创造更好的。

public class Service<TObject> : BaseService<TObject, IRepository<TObject>>
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top