首页 > 后端开发 > C++ > 如何在使用实体框架插入后检索数据库分配的实体 ID?

如何在使用实体框架插入后检索数据库分配的实体 ID?

Mary-Kate Olsen
发布: 2025-01-21 11:17:13
原创
388 人浏览过

How to Retrieve a Database-Assigned Entity ID After Insertion with Entity Framework?

插入实体框架后获取实体 ID

当您使用实体框架将新实体插入数据库时​​,您通常需要数据库分配的 ID 来进行后续操作。 本文介绍了如何有效地检索此 ID。

虽然实体框架提供了 ID 属性,但它最初保存的是临时标识符,而不是实际的数据库 ID。 要获取数据库生成的 ID,需要使用稍微不同的方法。

解决方案

实体框架优雅地处理自动生成的键的 ID 检索(如 SQL Server 中的 IDENTITY)。 只需将您的实体添加到相关的 ObjectSet 并在 ObjectContext 上调用 SaveChanges 即可。然后,您的实体的 ID 属性将使用数据库分配的值进行更新。

<code class="language-csharp">using (var context = new MyContext())
{
  context.MyEntities.Add(myNewObject);
  context.SaveChanges();

  int id = myNewObject.Id; // id now contains the database-generated ID
}</code>
登录后复制

在内部,实体框架使用 SCOPE_IDENTITY() (或类似的函数,具体取决于您的数据库)在使用自动生成的键时获取新插入的实体的 ID。 这可确保您无需额外编码即可获得正确的 ID。

以上是如何在使用实体框架插入后检索数据库分配的实体 ID?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板