Rob*_*one 11 c# sql record entity-framework-core asp.net-core
有人知道如何禁用 EFCore 上的 AutoDetectChanges 吗?
我需要这样做,因为我必须在我的数据库中进行大量导入,并且无法在网上找到信息。
试过这个,但它不起作用:
_context.Configuration.AutoDetectChangesEnabled = false;
Run Code Online (Sandbox Code Playgroud)
说配置不存在。
非常感谢。
Iva*_*oev 15
你尝试过的
_context.Configuration.AutoDetectChangesEnabled = false;
Run Code Online (Sandbox Code Playgroud)
适用于 EF6。
对应的 EF Core 选项AutoDetectChangesEnabled是与DbContext关联的ChangeTracker 的属性,因此对应的代码是
_context.ChangeTracker.AutoDetectChangesEnabled = false;
Run Code Online (Sandbox Code Playgroud)
Jac*_*cob 12
我认为我之前完成的方法是在您注册 DBContext 时将其关闭,这样您就不必将其添加到每个查询中。
在我的头顶上,没有代码前。现在参考,所以我可能是错的
services.AddDbContext<YourDbContext>(options =>
{
options.UseQueryTrackingBehavior(QueryTrackingBehavior.NoTracking);
});
Run Code Online (Sandbox Code Playgroud)
很确定这就是你要找的
这是我熟悉的,来自文档:
var blogs = context.Blogs
.AsNoTracking()
.ToList();
Run Code Online (Sandbox Code Playgroud)
参考: https : //docs.microsoft.com/en-us/ef/core/querying/tracking
归档时间: |
|
查看次数: |
7627 次 |
最近记录: |