Ninject 无法绑定 IRepository<T>

Ninject cannot bind IRepository<T>

我的申请有问题。最近我下载了 Ninject 个包,但我无法绑定我的实体。

我的控制器:

public class ServerController : ApiController
{
    private readonly IServerService _service;

    public ServerController(IServerService service)
    {
        this._service = service;
    }

注册服务:

private static void RegisterServices(IKernel kernel)
    {
        kernel.Bind<IServerService>().To<ServerService>().InSingletonScope();


        kernel.Bind<IRepository<Server>>()
            .To(typeof(ServerRepository))
            .InRequestScope();
    }  

服务器服务:

private readonly IRepository<Server> _repository;

    public ServerService(IRepository<Server> repository)
    {
        this._repository = repository;
    }

    public async Task<IEnumerable<Server>> GetAllAsync()
    {
        return await this._repository.GetAllAsync();
    }

如果有人需要更多信息,我会将其发送到评论区。

问题已解决。我刚刚向 DAL 模型添加了新接口并实现了 IRepository。之后我的 Ninject 寄存器看起来像:

        kernel.Bind<IServerService>().To<ServerService>().InSingletonScope();
        kernel.Bind<IServerRepository>().To<ServerRepository>().InSingletonScope();