C# 由同一DbContext加载的特定实体的Savechange()

C# 由同一DbContext加载的特定实体的Savechange(),c#,entity-framework,dbcontext,savechanges,C#,Entity Framework,Dbcontext,Savechanges,请我想要此方案的解决方案,代码请: 我有两个实体X和Y由同一个DbContext加载 加载实体X 修改实体X 加载实体Y 修改实体Y 保存对实体Y的更改 撤消对图元X的更改 每次为实体Y保存更改时,它也将应用于实体X 我的示例代码: 1-加载并更新客户端X: public static void UpdateClientModeleContainer GStock,Modele.Client客户端 { 尝试 { 使用frmClient frmClient=new frmClientGStock,

请我想要此方案的解决方案,代码请:

我有两个实体X和Y由同一个DbContext加载 加载实体X 修改实体X 加载实体Y 修改实体Y 保存对实体Y的更改 撤消对图元X的更改 每次为实体Y保存更改时,它也将应用于实体X

我的示例代码:

1-加载并更新客户端X:

public static void UpdateClientModeleContainer GStock,Modele.Client客户端 { 尝试 { 使用frmClient frmClient=new frmClientGStock,客户端 { 如果frmClient.ShowDialog==DialogResult.Cancel { GStock.UndoDbContext; } 其他的 如果frmClient.ShowDialog==DialogResult.OK GStock.SaveChanges; } } } 捕获异常e { 方法:处理例外情况; } } 2-加载并更新frmClient表单的

公共静态无效更新类别ModeleContainer GStock,Modele.Category类别 { 尝试 { 使用frmCategorie frmCategorie=新FRMCategoriesTock,类别 { 如果frmCategorie.ShowDialog==DialogResult.OK { //Category BindingSource是公共BindingSource frmCategorie.CategorieBindingSource.EndEdit; GStock.SaveChanges; } 其他的 GStock.UndoDbContext; } } 捕获异常e { 方法:处理例外情况; } }
3-GStock是所有表单的共享数据库上下文,用于跟踪更改

当然会。不要使用相同的DbContext。那么,我如何在不初始化的情况下将由DbContext 2修改的实体Y加载到Context 1中,谢谢您向我展示您的代码,让我们看看是否有办法。