use*_*456 0 c# dependency-injection asp.net-core
我知道我需要DriverRepository在使用该服务之前注册该服务。
这是我所做的:
builder.Services.AddScoped<IDriverRepository, DriverRepository>();
现在在我的DriverAccountsModel课堂上:
public class DriverAccountsModel : PageModel
{
    public IHttpContextAccessor HttpContextAccessor { get; }
    public IDriverRepository DriverRepository { get; }
    public DriverAccountsModel(IHttpContextAccessor 
        httpContextAccessor,
        DriverRepository driverRepository)
    {
        HttpContextAccessor = httpContextAccessor;
        DriverRepository = driverRepository;
    }
    public List<DriverAccounts> results;
    public IActionResult OnGet()
    {
        var results = DriverRepository.GetAll();
        return Redirect("DriverAccounts");
    }
    public IActionResult OnPost(int id, Models.DriverAccounts driverAccounts)
    {
        return Redirect("DriverAccounts");
    }
}
构造函数应该检索IDriverRepository(接口)服务,而不是DriverRepository(类)。
public DriverAccountsModel(
    IHttpContextAccessor httpContextAccessor,
    IDriverRepository driverRepository)
{
    HttpContextAccessor = httpContextAccessor;
    DriverRepository = driverRepository;
}
| 归档时间: | 
 | 
| 查看次数: | 64 次 | 
| 最近记录: |