LINQ获取下一行ID?

时间:2010-05-26 20:34:23

标签: c# linq

假设我有一个包含RowId的表,以及值:

1 valueA
2 valueB
3 valueC
4 valueD

然后我想删除第4行:

1 valueA
2 valueB
3 valueC

因此下一行ID将是5.因为删除了第4行,我不能简单地找到表中的最后一行并添加1以获取下一行ID。如何获取下一行ID?

谢谢!

2 个答案:

答案 0 :(得分:3)

在LinqToSQL中,如果两个类都有一个PRIMARY KEY IDENTITY列并且具有连接关联(由数据库中的FKey创建或在设计器中手动创建),则可以像下面这样插入两个相关项:

Customer c = new Customer() {Name = "Bob"};
Order o = new Order() {Customer = c, Quantity = 5};

myDataContext.InsertOnSubmit(c);
  //submit changes will insert c and o
  //  in the right order and with all id's populated.
myDataContext.SubmitChanges();
  //the id's are populated 
int customerID = c.CustomerID;
int orderID = o.OrderID;
customerID = o.CustomerID;

答案 1 :(得分:2)

插入新行后,您将获得行ID。在插入之前我不明白你为什么需要它!