0

我在IEnumerable中创建了我需要的东西,然后我需要将集合插入到数据库中,但无法计算出如何。请看看我的代码片段:使用EntityFramework插入多个对象?

public void CopyPonyJetpacks(Pony p_s, Pony p_d) 
{ 
    try 
    { 
     using (var scope = new TransactionScope()) 
     { 

      var assocs = from x in p_s.Pony_Jetpacks 
         select new Pony_Jetpacks() 
         { 
          Id=Guid.NewGuid(), 
          JetpackId=x.JetpackId, 
          PonyId=p_d.Id 
         }; 

      data.Pony_Jetpacks.AddObject(assocs); //This doesn't work, what to do? 

      data.SaveChanges(); 
      scope.Complete(); 
     } 
    } 
    catch (Exception e) 
    { 
     throw e; 
    } 

} 

这将是非常可悲的,如果我不得不在“ASSOCS”转换成列表,然后插入一个接一个。

回答

1

你并不需要转换你的assocsIEnumerable<T>List<T>但是,是的,你需要一个,将其插入一个:

foreach (var assoc in assocs) 
    data.Pony_Jetpacks.AddObject(assoc); 
相关问题