用于创建自定义自动递增(或自动递减)标识的 DataAnnotation

DataAnnotation for creating Custom auto increment (or auto decrement) identity

我想做的是创建一个自动递减的主键:

Id BIGINT PRIMARY KEY IDENTITY(-1,-1)

我搜索了一下,只找到了如下设置Identity的DataAnnotation:

[DatabaseGenerated(DatabaseGeneratedOption.Identity)]

但这并不能满足我设置起始值和增量值的需要。如果我想增加 1,并且从 1 开始,实际上我经常使用的以下方法对我有用:

    [Key]
    public long Id { get; set; }

您好 您可以使用 数据库初始化或迁移

来实现此输出

在 Code First 中没有直接的方法来实现它。因此,要使用这些选项中的任何一个,您需要

自定义数据库初始化: 这是通过实现您自己的数据库初始化器 class 并从种子方法执行所需的 SQL 命令来完成的(查看对于链接文章中 public class MyInitializer 的实现)

或自定义迁移:您可以在迁移的 Up() 或 Down() 方法中执行任何 SQL 命令

来源:

请看上面的url,提问者评论说,使用上面的技术可以解决问题。所以希望它对你也有用。

谢谢

卡尔提克