0

我将 EF5 与 SQL Server CE 一起用于私人项目,并且正在尝试更新相关记录。

我的两张桌子是:

文档 1-n 文档文件

文件: - ID (1)

DocumentFile - DocumentId (n) - 名称

现在我的问题是:我想更新一个文档条目的完整依赖列表(DocumentFile)。fe - 一个文档(id 20)在 DocumentFile-Table 中有 5 个依赖项。- 用户删除 3 个文件并再添加 1 个。

结果应该是:DocumentFile 表中有 3 个相关条目 (5-3+1)。

我试图只删除集合并添加新条目,但 EF 不会自动删除旧条目。它只是将新列表添加到表中。

我真的需要删除每个依赖的文档文件条目并添加新集合吗?

谢谢

4

1 回答 1

0

如果用户删除了 3 个文件,大概您有代码访问每个实体并调用DeleteObject导致 3 个实体处于已删除状态。用户将再添加一个文件,因此将使用AddObject创建一个附加实体,因此上下文将包含另一个处于已添加状态的条目。您还将有 2 个实体处于未更改状态。当您在上下文中调用SaveChanges时,将生成相应的 SQL,并且 EF 将管理您的更新。如果您遵循这些步骤,则不需要删除每个依赖实体。

于 2013-09-09T08:20:54.100 回答