我有一个web api的post方法,它会在我的Oracle数据库表中插入一行新数据。我在处理表的主键时遇到了问题,这个主键是一个序列值。在Entity Framework中如何实现my_primary_key_seq.nextval
呢?目前这段代码是有效的,但当我们在旧的.NET WebForm中使用序列下一个值作为下一个主键插入新行时,将违反PK唯一性约束。
decimal nextPK = context.FORMPPs.OrderByDescending(p => p.PPID).FirstOrDefault().PPID + 1;
item.PPID = nextPK;
context.FORMPPs.Add(item);
int result = context.SaveChanges();
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
),它将自动生成主键。然后,在调用SaveChanges()
后,您可以通过获取实体的ID属性的值来获取分配给新行的ID。 - Daniel Gabriel