【发布时间】:2014-04-30 04:27:22
【问题描述】:
我正在使用 Entity Framework 6 并为测试数据库创建种子数据。一切正常,除了一个问题。
我的一些类在将对象添加到列表之前会检查重复的 ID。这是一个典型的模式:
private Assignment FindAssignment(VideoCourse course) {
Assignment assignment = assignments.Find(x => x.Course.Id == course.Id);
if (assignment == null) {
assignment = new Assignment(this, course);
assignments.Add(assignment);
}
return assignment;
}
这在我的种子覆盖中失败(我不能添加超过一门课程),因为 course.Id 对于所有课程来说都是 0,直到它们被保存到数据库中。
我尝试在代码中的多个位置调用SaveChanges(),但这确实与上下文混淆并导致其他对象未保存。
那么问题是——如何将对象保存到数据库中以便设置它们的 ID?
【问题讨论】:
标签: entity-framework