一步添加带子项的实体

时间:2015-08-03 00:20:01

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

我的EF中有以下模型

public class Items
{
    public int ItemsId {get; set;}
    public string itemDetails {get; set:}
    public virtual IColletion<subItems> subIterms {get; set;}
}

public class subItems
{
   public int subItemsId emphasized text* {get; set;}
   public int ItemsId {get; set;}
   public string subItemDescription {get; set;}
   public virtual Items Items{get; set;}
}

当我尝试添加包含subItems详细信息列表的项目时。 使用

我使用Repository模式在WebApi控制器中添加实体

Uow.ItemRepository.Add(Items)

在实体框架中跟随哪些调用

DbEntityEntry dbEntityEntry=DbContext.Entry(Items)
DbSet.Add(Items);

代码一切正常。唯一的问题是它只会添加Item信息,而不会添加subItems的值。

请告诉我如何修复它,以便在我添加Item时添加Item及其subItems

我的保存方法是

public virtual void Add(T entity)
{
DbEntityEntry dbEntityEntry= DbContext.Entry(entity);
if(dbEntityEntry.State != EntityState.Detached)
   {
  dbEntityEntry.State=EntityState.Added;
   } 
else 
   { 
    DbSet.Add(entity);
   }
  }
}

0 个答案:

没有答案