EntityFramework& Oracle - 如何获取插入的ID?

时间:2018-03-30 05:41:16

标签: asp.net oracle entity-framework

我正在为我的oracle数据库使用通用实体框架存储库模式。

public int Add(TEntity entity)
{
      var addedEntity = _context.Entry(entity);
      addedEntity.State = EntityState.Added;
      return _context.SaveChanges();
}

简单地说,如何将我的实体ID插入到具有生成ID的数据库中。

编辑:我正在使用oracle 11g。所以没有'identity'关键字。我创建了获取max ref的序列并在插入之前触发它。因此,我发送给EF的实体在SaveChanges();

之后没有更新

...谢谢

1 个答案:

答案 0 :(得分:0)

对于您的Identity-Column,您必须在EF模型浏览器中将属性<storeGeneratedPattern>设置为<Identity>

  1. 在模型浏览器中转到您的实体

    enter image description here

  2. 设置属性

    enter image description here

保存身份后,这将为您的ID列获取当前的新值。

适用于我的ORACLE,EF-Framework 6