【发布时间】:2015-01-06 16:07:01
【问题描述】:
我正在使用 Entityframework 6,我正在尝试在数据库中插入一种父子类型的数据。 我正在使用 Entityframework.BulkInsert 插入数据。我在所有表中都有 autoIncrement int 主键
我的对象如下:
var parentObjects= new List<parentObject>();
var childObjects= new List<childObject>();
for (int i = 0; i <= 100; i++)
{
var parentObj= new parentObject()
{
Name="p1",
Address="a1"
};
childObjects= SeedInitializer.ChildItems.OrderBy(x => new Random().Next()).Take(2).ToList();//this gets 2 child objects
foreach (var childObj in childObjects)
{
childObj .ParentObject= parentObj;
//childObj .CommissionPlanId = i; //tried this still not working
parentObj.ChildObjects.Add(childObj );
}
parentObjects.Add(parentObj);
}
//when I do a quickwatch on parentObjects, i see child objects in each parentObject, but
//with the last id of parentObject
context.BulkInsert(parentObjects, 1000);
context.SaveChanges();
在保存时仅在 childObject 中创建了 2 条记录,创建的 parentObject id 错误,即 0 我无法理解为什么没有创建子项目,而创建了父对象。有人可以帮助我了解我在哪里做错了吗?
【问题讨论】:
-
尝试做类似的事情,但没有运气。然后我读了这个..efbulkinsert.codeplex.com/discussions/532979
标签: entity-framework entity-framework-4 entity-framework-5 entity entity-framework-6