0
我使用foreach循環將多個對象保存到數據庫。 這些被保存後,我想用保存的對象的ID做些什麼。
這是我的插入循環:C#在將多個對象保存到數據庫後獲取一個List或一組id數組對象
foreach (var Object in ListOfObjects)
{
Object obj = new Object();
obj.Objectvalue1 = Object.Value1;
obj.Objectvalue2 = Object.Value2
db.Objects.Add(obj);
}
db.SaveChanges();
我想要做的是以下幾點:
List<int> IDs = new List<int>();
foreach (var Object in ListOfObjects)
{
Object obj = new Object();
obj.Objectvalue1 = Object.Value1;
obj.Objectvalue2 = Object.Value2
db.Objects.Add(obj);
IDs.Add(obj.ID) //this should be the Primary key
}
db.SaveChanges();
最後一個例子不會工作,因爲ID將清空,您首先要保存的數據要填充的Id的數據庫,但我不想爲我插入的每個對象保存。
我看到一些Questions獲得ID,但這些都是爲了插入一個單一的對象,而不是多個。
摘要:有沒有辦法獲得插入記錄的ID列表或數組。
枚舉輕鬆地檢索在你的對象,你救了他們之後得到他們的ID – KiwiPiet
@KiwiPiet wouldnt這給我所有的對象id從該表中,而不僅僅是插入的對象? – Djeroen
很確定你可以在填充你的對象列表之後做一個AddRange,然後在SaveChanges之後你可以得到ID列表。而不是在foreach中迭代Add。 – ewahner