Linq to sql 如何在使用linq在db中插入行时检索标识ID

Linq to sql 如何在使用linq在db中插入行时检索标识ID,linq-to-sql,Linq To Sql,如何在使用linq在db中插入行时检索标识ID?linq to SQL应该自动检索插入对象的标识,并相应地更新映射到主键的字段-只要映射的PK属性标记为[列(IsDbGenerated=true)]如果您已将该“ID”行的属性设置为“自动生成的值”=true,“自动同步”设置为“OnInsert” 。。。。。使用.SubmitChanges()保存更改后,请阅读。不需要特别的技巧或任何东西 因此,对于NerdDinner样品: using(NerdDinnerContext ctx = ne

如何在使用linq在db中插入行时检索标识ID?

linq to SQL应该自动检索插入对象的标识,并相应地更新映射到主键的字段-只要映射的PK属性标记为
[列(IsDbGenerated=true)]

如果您已将该“ID”行的属性设置为“自动生成的值”=true,“自动同步”设置为“OnInsert”

。。。。。使用
.SubmitChanges()
保存更改后,请阅读。不需要特别的技巧或任何东西

因此,对于NerdDinner样品:

using(NerdDinnerContext ctx = new NerdDinnerContext())
{
    Dinner upcoming = new Dinner();

    // set all properties for the dinner 
    upcoming.EventDate = DateTime.Today.AddDays(30);

    ctx.Dinners.InsertOnSubmit(upcoming);
    ctx.SubmitChanges();

    int newDinnerID = upcoming.DinnerID;
}
现在,“newDinnerID”应该包含新添加的标识


Marc

sql server银徽章上的gratz Marc谢谢你,Remus!你自己也离它不远:-)