EntityFramework在保存更改之前显示实体

Mix*_*Net 9 c# entity-framework savechanges

实体框架ObjectSet及其方法ToList显示刚刚保存的实体.这意味着,当我打电话时

context.AddToCustomers(myNewCust);
Run Code Online (Sandbox Code Playgroud)

然后(不调用SaveChanges)

myDataGrid.DataContext = context.Customers.ToList();
Run Code Online (Sandbox Code Playgroud)

DataGrid不显示新添加的实体(甚至context.Customers.Count()不包括它).

有没有办法显示这些实体(那些实体EntityState = Added)?

提前致谢.

Lad*_*nka 9

我认为您可以通过调用以下内容来获取未保存的已添加实体:

var inserted = context.ObjectStateManager
                      .GetObjectStateEntries(EntityState.Added)
                      .Where(e => !e.IsRelationship)
                      .Select(e => e.Entity)
                      .OfType<Cutomer>();
Run Code Online (Sandbox Code Playgroud)

但只是通过阅读你的问题,我害怕你试图做错事.为什么需要将未保存的实体与检索结合起来?如果您需要显示未保存的内容,您应该将其保存在您自己的单独集合中.