gpt4 book ai didi

entity-framework-4 - Entity Framework (4.0) - 添加带有外键的新记录

转载 作者:行者123 更新时间:2023-12-04 06:12:56 25 4
gpt4 key购买 nike

我们有一个表“问题”,其中包含“联系人”表的外来信息。理想情况下,当添加新问题时,用户应从下拉列表中选择联系人。但是,在某些情况下,联系人可能不存在,因此用户可以添加最少的新联系人详细信息以将问题添加到数据库中。(这是一个支持台应用程序,速度对运算符(operator)来说至关重要)。稍后会清理联系人数据。

因此,在代码中,我们使用 Entity Framework 检测新联系人并在数据库中创建新联系人:_context.AddToContacts(_contact); .然后我们需要检索新的 id 以更新问题 - 因此从联系人表中读取以获取添加的最后一条记录。
这工作正常。

然后我们建立问题记录,包括使用 ContactsReference.EntityKey 的新外键。 .
当我们保存问题时 SaveChanges我们得到了问题记录(使用正确的外键返回联系人),但我们将另一个联系人记录添加到数据库中。

我们在这里做的工作太多了吗?或者 Entity Framework 是否应该能够正确处理表之间的添加和管理数据链接?

最佳答案

您可以在单个事务中完成这两项操作。

var contact = new Contact(){/*initialize properties*/};
var issue = new Issue(){/*initialize properties*/};

issue.Contact = contact;

_context.AddToIssues(issue);

_context.SaveChanges();

EF 将检测新的联系人并将其添加。

关于entity-framework-4 - Entity Framework (4.0) - 添加带有外键的新记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7554260/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com