2014-03-03 17 views
0

爲了確保所有的子元素都將被刪除,目前我不得不這樣做:是否可以指定也應該與他們的父母Linq中刪除的子對象?

ComponentType type = db.ComponentTypes.First(t => t.ID == Convert.ToInt32(button.CommandArgument)); 
db.RigActions.DeleteAllOnSubmit(type.Components.SelectMany(c => c.RigActions)); 
db.Components.DeleteAllOnSubmit(type.Components); 
db.ComponentTypes.DeleteOnSubmit(type); 
db.SubmitChanges(); 

可維護性的目的,這是嚇唬我,我(或其他開發商)可能會忽略所有的清理工作當父項(或在這種情況下 - 父項的父項)元素被刪除時是必需的。

是否LINQ的任何類型的依賴屬性,我可以設置,這樣,當一個組件類型被刪除後,將刪除所有組件的記錄,以及屬於每個組件記錄所有操作?

+0

的LINQ是一個查詢語言,它有沒有內在的數據管理系統ent特性。這更是一個實體框架的問題,但如果你的引用完整性是在你的數據庫設置正確,你應該永遠無法刪除父沒有刪除它的孩子。 –

+0

lINQ僅僅是您正在使用的查詢語言。您是否使用LINQ到SQL(的.dbml)LINQ到實體(的.edmx),或其他什麼東西? – Olaf

回答

相關問題