2012-09-07 40 views
0

我在我的數據庫中有多對多的關係,所以我有三個表,TableA,TableB和TableAB。 TableAB只包含tableA的主鍵和tableB的主鍵。實體框架4.0與STEs:如何刪除多對多關係而不刪除寄存器

當我從數據庫創建我的edmx時,我沒有tableAB的實體。我想刪除tableAB的寄存器,但不刪除tableA和tableB的寄存器。

如何使用自我跟蹤實體執行此操作?

我有以下選擇:

myContext.tableA.Attach(myTableARecord); 
myTableARecord.TableBRecord.Remove(myTableARecord.myTableBRecord[0]); 
miContexto.SaveChanges(); 

這工作。

但是,如果我使用applyChanges而不是attach,那麼它不起作用。 STE的applyChanges和上下文的Attach方法之間的區別是什麼?

謝謝。

回答

1

Attach需要一個從ObjectGraph斷開連接並將其連接到ObjectGraph的實體。

AcceptChanges提交實體內的更改。

+0

對不起,我的意思是applyChanges,沒有acceptChanges。 –

+0

@Daimroc,我也是。 –

相關問題