实体框架6多个嵌套的主 - 细节插入

时间:2016-05-31 17:08:36

标签: c# entity-framework asp.net-web-api2

我有这个表格场景

model

因为你可以看到有一个多嵌套的主 - 详细信息表,我有一个requeriment,我必须一次插入前三个实体,我正在使用Entity Framework 6,Database First。 (mvc Web api2)。我设法以这种方式做了前两个实体:

    Entity1 entity1 = new Entity1()
    {
       Field = "a field"
    };

    entity1.Entity2.Add(new Entity2() 
    {
       Field = "another field"

    });

// ***********
//保存是:

 using (var context = new backendEntities())
 {
    context.Entity1.Add(entity1);
    context.SaveChanges();
 }

并且前两个实体保存正常,但我无法或者找不到添加下一个实体(Entity3)的方法。所有主键都是Identity autonumerics。我怎么能一次保存这三个实体?谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

您是否尝试执行以下操作?

Entity1 entity1 = new Entity1()
{
   Field = "a field"
};

var entity2 = new Entity2() 
{
   Field = "another field"
};

entity1.Entity2.Add(entity2);

var entity3 = new Entity3() 
{
   Field = "another field"
};

entity2.Entity3.Add(entity3);

var entity4 = new Entity4() 
{
   Field = "another field"
};

entity3.Entity4.Add(entity4);

using (var context = new backendEntities())
{
    context.Entity1.Add(entity1);
    context.SaveChanges();
}