访问实体框架中新插入的实体的 ID
实体框架中的一个常见任务涉及在数据库插入后立即获取实体的 ID。 实体框架通常采用自动 ID 生成(如 SQL Server 中的 IDENTITY)。
标准方法
将实体添加到 ObjectSet 并调用 SaveChanges()
会自动填充 ID 属性。 方法如下:
<code class="language-csharp">using (var context = new MyContext()) { context.MyEntities.Add(myNewObject); context.SaveChanges(); int id = myNewObject.Id; // The Id property is now populated }</code>
自定义 ID 生成
有时,您可能需要控制 ID 的生成。 实体框架的 DatabaseGeneratedOption
属性提供了各种策略。
手动 ID 分配
对于手动分配的 ID,请使用 DatabaseGeneratedOption.None
。这会阻止实体框架生成 ID;您必须在添加实体之前设置它。
计算 ID
如果 ID 是计算出来的(不是从表中),请使用 DatabaseGeneratedOption.Computed
。实体框架在执行插入语句后检索 ID。
总结
在实体框架中检索新插入实体的 ID 通常很简单。 自动 ID 生成是默认设置,但可以针对特定场景使用自定义选项。
以上是如何使用实体框架检索新插入的实体的 ID?的详细内容。更多信息请关注PHP中文网其他相关文章!