请问关于c的具体应用场景有哪些?
- 内容介绍
- 文章标签
- 相关推荐
本文共计265个文字,预计阅读时间需要2分钟。
我想刷新我的DbContext中的所有实体,而不是重新创建它。我尝试了以下内容,但没有一个是有效的:
csharpvar context=((IObjectContextAdapter)myDbContext).ObjectContext;var refreshableObjects=(from entry in context.ObjectEn
我想刷新我的DbContext的所有实体而不重新创建它,我尝试了以下内容,但没有一个是有意义的:var context = ((IObjectContextAdapter)myDbContext).ObjectContext; var refreshableObjects = (from entry in context.ObjectStateManager.GetObjectStateEntries( EntityState.Added | EntityState.Deleted | EntityState.Modified | EntityState.Unchanged) where entry.EntityKey != null select entry.Entity); context.Refresh(RefreshMode.StoreWins, refreshableObjects); //....................................................................... foreach (var entry in this.Orm.ChangeTracker.Entries()) { entry.State = EntityState.Unchanged; } this.Orm.ChangeTracker.DetectChanges();
并且唯一一个刷新我的DbContext:
foreach (var i in this.Orm.ChangeTracker.Entries()) i.Reload();
但它太慢了.你能帮我选择正确的方法吗?
var context = ((IObjectContextAdapter)myDbContext).ObjectContext; var refreshableObjects = (from entry in context.ObjectStateManager.GetObjectStateEntries( EntityState.Added | EntityState.Deleted | EntityState.Modified | EntityState.Unchanged) where entry.EntityKey != null select entry.Entity).ToList(); context.Refresh(RefreshMode.StoreWins, refreshableObjects);
我更喜欢以下内容:
var refreshableObjects = myDbContext.ChangeTracker.Entries().Select(c=>c.Entity).ToList(); context.Refresh(RefreshMode.StoreWins, refreshableObjects);
本文共计265个文字,预计阅读时间需要2分钟。
我想刷新我的DbContext中的所有实体,而不是重新创建它。我尝试了以下内容,但没有一个是有效的:
csharpvar context=((IObjectContextAdapter)myDbContext).ObjectContext;var refreshableObjects=(from entry in context.ObjectEn
我想刷新我的DbContext的所有实体而不重新创建它,我尝试了以下内容,但没有一个是有意义的:var context = ((IObjectContextAdapter)myDbContext).ObjectContext; var refreshableObjects = (from entry in context.ObjectStateManager.GetObjectStateEntries( EntityState.Added | EntityState.Deleted | EntityState.Modified | EntityState.Unchanged) where entry.EntityKey != null select entry.Entity); context.Refresh(RefreshMode.StoreWins, refreshableObjects); //....................................................................... foreach (var entry in this.Orm.ChangeTracker.Entries()) { entry.State = EntityState.Unchanged; } this.Orm.ChangeTracker.DetectChanges();
并且唯一一个刷新我的DbContext:
foreach (var i in this.Orm.ChangeTracker.Entries()) i.Reload();
但它太慢了.你能帮我选择正确的方法吗?
var context = ((IObjectContextAdapter)myDbContext).ObjectContext; var refreshableObjects = (from entry in context.ObjectStateManager.GetObjectStateEntries( EntityState.Added | EntityState.Deleted | EntityState.Modified | EntityState.Unchanged) where entry.EntityKey != null select entry.Entity).ToList(); context.Refresh(RefreshMode.StoreWins, refreshableObjects);
我更喜欢以下内容:
var refreshableObjects = myDbContext.ChangeTracker.Entries().Select(c=>c.Entity).ToList(); context.Refresh(RefreshMode.StoreWins, refreshableObjects);

