0

我有一个 MVC4 网站,它有一个包含其帖子的 SQL Server 数据库。在每个帖子上都有一个NextPrevious按钮。这些按钮是从databaseContext.Post.Count()正负 1 计算出来的,并且(如果 item = 0 不显示Previous,反之亦然。)但是由于一些Posts被删除,因此中间有一些为空的点。这不会打扰我,除非现在由于某种原因数据库一直在向这些空白点添加新条目,所以Count()它们的实际值是关闭的,这导致最高值的 next 指向比实际存在的值更高的值(因为它超过了总数,请记住,即使它的 Id 也超过了总数。)

我知道我可以以编程方式检查此类问题,但是我想知道是否有办法更改 Id 键的创建方式?

4

1 回答 1

1

您假设生成的 ID 将是密集单调的,没有间隙。这是不正确的假设。生成的 ID 中总会有间隙。你永远不能假设计算记录会给你有效的 ID。如果您想要一个密集、单调的行号,请使用专用ROW_NUMBER功能,但利用它进行导航是有问题的。

于 2012-09-08T07:15:57.803 回答