[Entity Framework].NET/C#应用程序开发中如何获取由EF(Entity Framework)写入数据后生成的自增ID呢?

C#开发 作者: Rector 153阅读 0评论 0收藏 收藏本文

郑重申明:本文未经许可,禁止任何形式转载

问题描述

在.NET/C#应用程序开发过程中,我们需要在向数据库写入数据后返回刚才写入数据对应的自增ID数值,如果使用的是Entity Framework ORM 库,应该如何获取呢?

方案一

使用Entity Framework的话,还是比较简单的。如果我们设计的数据库中对应表的ID字段是自增的,那么,只需要将实体添加到ObjectSet对象上,然后调用SaveChanges()方法,自增ID的值将自动返回并赋值给当前的实体,如下:

using (var context = new MyContext())
{
  context.MyEntities.AddObject(myNewObject);
  context.SaveChanges();

  int id = myNewObject.Id; // Yes it's here
}

Entity Framework会默认执行SQLSELECT SCOPE_IDENTITY,此语句将返回当前INSERT语句执行的自增ID值。

阅读了该文章的人还浏览了...

本文永久链接码友网 » [Entity Framework].NET/C#应用程序开发中如何获取由EF(Entity Framework)写入数据后生成的自增ID呢?

发布于: 2018-04-19 09:49:40
分享扩散:

文章评论

获取验证码