这是一个相当基本的问题,但我很惊讶在任何地方都找不到合适的答案。
考虑以下数据库模式:
Person {PersionID, Name, CountryOfBirthID [references Country]}
Country {CountryID, CountryName}
该应用程序在启动期间从数据库中读取所有国家,并将它们保存在一个列表中。每当我添加一个新人时,我都会使用上面提到的列表中的 ID 和数据创建一个新的 Country 对象。我期待 EF 插入一个 ID 引用 Country 表中记录的新 Person,但它会向 Country 表中插入一条新记录并为其分配一个新 ID,这显然不是我想要的。
插入引用其他表中记录的新记录的常规方法是什么?我假设,每当我添加 Persion(在同一上下文下)并重用获取的记录时,我都可以按 ID 获取 Country 记录,但是还有其他方法可以让我只访问 Person 表吗?