如何使用LINQ和C#插入记录并返回该记录的主键

时间:2008-11-06 14:32:42

标签: c# linq

编写插入记录然后使用C#返回新插入记录的主键的LINQ查询的最佳方法是什么?

3 个答案:

答案 0 :(得分:32)

主键值将在SubmitChanges()之后的该属性中。

MyTable record = new MyTable();
record.Name = "James Curran";
db.MyTable.InsertOnSubmit(record);
db.SubmitChanges();
Console.WriteLine("record inserted as ID : {0}", record.Id);

答案 1 :(得分:6)

// Create a new Order object.
Order ord = new Order
{
    OrderID = 12000,
    ShipCity = "Seattle",
    OrderDate = DateTime.Now
    // …
};

// Add the new object to the Orders collection.
db.Orders.InsertOnSubmit(ord);

// Submit the change to the database.
try
{
    db.SubmitChanges();
}
catch (Exception e)
{
    Console.WriteLine(e);
    // Make some adjustments.
    // ...
    // Try again.
    db.SubmitChanges();
}
return ord.OrderID;

答案 2 :(得分:1)

任何具有AutoGeneratedValue = true的字段将在dc.SubmitChanges()

将该记录提交到数据库后填写