我正在尝试查找ASP.NET Core项目中的实体框架InvalidOperationException
的原因。例外情况是建议使用DbContextOptionsBuilder.EnableSensitiveDataLogging
。
在Startup.cs中,我有:
public void ConfigureServices(IServiceCollection services)
{
services.AddDbContext<TodoContext>(opt =>
{
opt.UseInMemoryDatabase("TodoList");
opt.EnableSensitiveDataLogging();
});
services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
}
问题在于它似乎什么也没做。我收到的异常消息完全相同,并且仍然建议使用DbContextOptionsBuilder.EnableSensitiveDataLogging
。
我想念什么吗?
答案 0 :(得分:0)
我不认为这是启用它的方法。这应该工作
public void ConfigureServices(IServiceCollection services)
{
services.AddDbContext<TodoContext>(opt =>
{
opt.UseInMemoryDatabase("TodoList").EnableSensitiveDataLogging();
});
services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
}
答案 1 :(得分:0)
我有同样的问题。通过使用OnConfiguring
本身中的DbContext
方法而不是ConfigureServices
中的Startup
方法来解决它。
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.EnableSensitiveDataLogging();
}
此选项记录在here中。