c# – 无法解析ApplicationDbContext中的类型服务

当我尝试使用dnx ef迁移添加迁移时添加Mig,我在控制台中有以下异常:

Unable to resolve service for type
‘Microsoft.AspNet.Http.IHttpContextAcccessor’ while attempting to
activate ‘NewLibrary.Models.ApplicationDbContext’.

我的ApplicationDbContext:

public class ApplicationDbContext : DbContext
{
    private readonly IHttpContextAccessor _accessor;

    public ApplicationDbContext(IHttpContextAccessor accessor)
    {
        _accessor = accessor;
    }
}

有什么问题?

我应该如何正确地向ApplicationDbContext构造函数添加依赖项?

最佳答案 DI不会通过命令行设置,这就是你得到上述异常的原因.

在评论中,您解释了您希望通过IHttpContextAccessor访问HttpContext,这通常在运行时可用.

迁移不会在运行时应用,其中DI已经配置并且可用.

您可能需要阅读Configuring a DbContext.本文档适用于EF7以上版本

点赞