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); 
相關問題