我正在使用存储库模式并尝试使用DI在.NET6.0中注册服务。
在Program. cs
中,
builder.Services.AddSingleton<IDomain, Domain>();
builder.Services.AddScoped<IApiUserRepository, ApiUserRepository>();
我的班级:
public class ApiUserRepository : IApiUserRepository
{
public ApiUserRepository(Domain domain) { }
}
public class Domain : IDomain
{
public Domain(IConfiguration configuration) { }
}
我得到以下异常,
在尝试激活“Repositories. ApiUserRepository”时,无法解析类型“Repositories.Domain”的服务。
您应该更改ApiUserRepository
的构造函数以注入IDomain
代替Domain
Domain
仅注册为IDomain
,因此Domain
本身无法解析。
或者,您可以注册Domain
类。