我是EF的新手,并且使用EF4创建了一个简单的模型(请参见下文)。
我在将新记录插入UserRecord实体,然后添加使用新创建的UserRecordId作为其主键的UserDetail实体时遇到问题。当我的数据库具有一对多关系时,下面显示的代码可以正常工作,但是当我将其更改为一对一关系时,我得到的错误如下图所示。
我认为它不起作用,因为现在没有与UserRecord关联的UserDetails属性,因为它现在是一对一的关系。我的问题是,现在如何以一对一关系插入新的UserRecord和相应的UserDetail实体?
对此的任何帮助都非常值得赞赏,就像在网上搜索并尝试各种不同的尝试都没有成功一样。
干杯
地
最佳答案
您的UserDetail
对象应该具有一个链接回UserRecord
对象的属性。 (它可能称为User
?如果我正确地阅读了下面的导航部分。)如果将该属性设置为新的,未提交的UserRecord
对象,则在提交两个对象时它将自动填充 key 。
UserRecord userRecord = new UserRecord();
// whatever
UserDetail userDetail = new UserDetail();
userDetail.User = userRecord; // This will auto-fill the FK during commit.
// whatever
// Add both userRecord and userDetail to the context and commit.
关于entity-framework - Entity Framework –使用外键插入多个表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4442915/