我有一个名为SavedAnswers的域名集合类型,并希望将该集合添加到我的Entity Framework类型条目中。我一直想弄清楚我需要做什么,但我对所有信息感到困惑。
Answers有一个身份主键和两个外键,带来更多问题。
public void AddEntries(List<SavedAnswers> answers)
{
foreach (var item in answers)
{
db.Entries.AddObject(Entries.CreateEntries(1, item.QuestionId, item.AnswerId));
}
db.SaveChanges();
}
答案 0 :(得分:2)
您的代码看起来不错,但您不应在 Entry 对象上使用生成的工厂方法。相反,只需通过构造函数创建它并使用对象初始化程序填充它:
public void AddEntries(List answers) {
foreach (var item in answers) {
db.Entries.AddObject(new Entry()
{
QuestionId = item.QuestionId,
AnswerId = item.AnswerId
});
}
db.SaveChanges();
}
当您使用ObjectSet.AddObject方法添加商店中不存在的新创建的对象时,该实体将获得自动生成的临时 EntityKey 及其 EntityState 将设置为已添加。