删除实体并删除Entity框架上的关系

时间:2015-04-17 13:18:00

标签: entity-framework lambda

我正在使用EF databaseFrist并创建模型,现在在尝试理解如何删除实体或关系时遇到问题。

请注意,有一个和一个表"A"和一个表"B",以及一个"a_b"表,其中AB与ID相关(多对多) ),a_b只有id_Aid_B,因此模型上没有创建实体a_bAlist<B>Blist<A>,我需要知道如何执行下一个功能:

-Remove all B entities related to A, it means delete the rows of B.
-Remove only the relationships of A to B, so all entities still exist on DB but they are dissociated.
-Delete A and remove all B related as well (remove entities from DB). 
-Delete A and preserve all B entities.
-How will it change if a_b has any other property so it becomes an entity
谢谢你的时间。

pd:我正在使用Lambda语法。

1 个答案:

答案 0 :(得分:0)

您可以告诉EF在DB First模型创建中公开实体中的所有主要和外键属性。对您来说意味着您可以通过使用链接到父对象主键的子对象的foreign-key属性查询父对象的子对象来单独查询。您可以通过子主键的主键属性值将每个子对象删除到父对象,以删除父对象与子对象之间的关系。如果没有子对象链接到父对象,则可以删除父对象。如果一个人在使用EF的删除过程中正常做事,那么人们就可以完全控制删除过程。

所以,你可以这样做。