当我尝试使用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以上版本