1

我正在使用实体框架将大量数据上传到数据库。我有很多不同的实体,它们之间有关系。
我的问题是有时我上传的对象可能已经在数据库中,但是当我查找该对象并找到它时,我无法将它添加到我本地制作的实体中,因为它们属于不同的上下文。

例如,我有实体 Sailor 和 Booze,它们有关系。我有一个新水手 Ackbar,我知道他最喜欢的酒是朗姆酒,我想把它保存到数据库中。
我创建了一个新的水手并将其名称设置为 Ackbar。然后我查看 Booze 是否有一个名为 rum 的条目。如果有,我尝试将其添加到 Ackbar。当我这样做时,EF 抱怨说新水手和数据库中的酒属于不同的上下文。如果我尝试将水手附加到上下文中,它会抱怨水手有一个空实体键。

在完成编辑关系之前,如何在不将任何内容保存到数据库的情况下构建所有这些关系?

4

1 回答 1

0

我建议您更改代码以使用相同的代码进行Context读写。为单个事务拥有多个上下文并不是比让一个Context存活几分钟更好的选择。

于 2013-07-03T13:02:49.607 回答