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();
我的申请有问题。最近我下载了 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();