使用EF Core组织主键值(int)



你好,我首先在EF代码上遇到删除命令的问题。当我删除一个数据并添加另一个数据后,我的主键值会发生变化。例如:1-2-3-4-5和我删除id=5并添加另一个数据主键更改6,它看起来像1-2-3-4-6。非常感谢。

private void silToolStripMenuItem_Click(object sender, EventArgs e)
{
int id = (int)dgvTurler.SelectedRows[0].Cells[0].Value;
Tur bulunacakTur = db.Turler.FirstOrDefault(a => a.Id == id);

db.Turler.Remove(bulunacakTur);           
db.SaveChanges();

} 

这通常只是SQL Server中自动递增ID的行为,没有很好的方法来解决这一问题。

我想说,这通常也是进行自动ID的首选方式,以防止您之前删除的ID为5的记录和具有相同ID的新记录之间的混淆。

关于SQL Server文档中的此主题:https://learn.microsoft.com/en-us/sql/t-sql/statements/create-table-transact-sql-identity-property?view=sql-server-ver16#备注

最新更新