我想在DB
中添加新行后获取所有ID。
我尝试了这个,但给了我一个例外 - >为Id
返回0foreach (var s in ss)
{
Table t1 = new Table();
...
...
_entities.Table.Add(t1);
Ids.Add(ID); // <--- trying to get Ids here.
}
_entities.SaveChanges();
TIA
答案 0 :(得分:3)
通常,您的实体会有一个ID属性,在调用SaveChanges()
之后会更新。所以你可以这样做:
List<int> Ids = new List<int>();
foreach (var s in ss)
{
Table t1 = new Table();
...
_entities.Table.Add(t1);
_entities.SaveChanges();
Ids.Add(t1.ID);
}
或者这个:
List<Table> insertedTables = new List<Table>();
foreach (var s in ss)
{
Table t1 = new Table();
...
_entities.Table.Add(t1);
insertedTables.Add(t1);
}
_entities.SaveChanges();
List<int> Ids = insertedTables.Select(t => t.ID).ToList();