我有以下仓库类:
public class TestRepository : Repository<Test>
{
private TestContext _context;
public TestRepository(TestContext context) : base(context)
{
_context = context;
}
}
public abstract class Repository<T> : IRepository<T> where T : Entity
{
private TestContext _context;
public Repository(TestContext context)
{
_context = context;
}
...
}
public interface IRepository<T>
{
...
}
我该如何在我的Startup.cs
中实现ASP.NET Core的依赖注入呢?
我是这样实现它的:
services.AddScoped(typeof(IRepository<>), typeof(Repository<>));
但是我接着得到了以下错误:
无法实例化服务类型为“Test.Domain.IRepository
1 [T]”的实现类型“Test.Domain.Repository 1 [T]”。
AddScoped
方法,这样更简洁:services.AddScoped<IRepository<Test>, TestRepository>()
。 - Henk Mollema