C# EF在Sql Server中添加没有用户ID的用户

C# EF在Sql Server中添加没有用户ID的用户,c#,sql-server,entity-framework,C#,Sql Server,Entity Framework,我想使用数据库集将用户添加到我的数据库中,但我只收集有关用户名和密码的信息。如果没有用户ID,如何添加 这是我的构造器: public class User { [Key] public int Id { get; set; } [Required] [MaxLength(30)] public string Username { get; set; } [Required]

我想使用数据库集将用户添加到我的数据库中,但我只收集有关用户名和密码的信息。如果没有用户ID,如何添加

这是我的构造器:

public class User
    {
        [Key]
        public int Id { get; set; }

        [Required]
        [MaxLength(30)]
        public string Username { get; set; }

        [Required]
        [MaxLength(30)]
        public string Password { get; set; }

        public List<Note> Notes { get; set; }

        public User(string username, string password)
        {
            this.Id =  1;
            this.Username = username;
            this.Password = password;
        }

当我执行代码时,数据库仍然是空的。

尝试按如下方式注释属性以使用自动增量

公共类用户
{
[关键]
[数据库生成(DatabaseGeneratedOption.Identity)]
公共int Id{get;set;}
[必需]
[MaxLength(30)]
公共字符串用户名{get;set;}
[必需]
[MaxLength(30)]
公共字符串密码{get;set;}
公共列表注释{get;set;}
公共用户(字符串用户名、字符串密码)
{
this.Username=用户名;
this.Password=密码;
}
}
或者像这样使用fluentapi

modelBuilder.Entity<User>()
            .HasKey(p => new { p.Id });

modelBuilder.Entity<User>().Property(p => p.Id).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);
modelBuilder.Entity()
.HasKey(p=>new{p.Id});
modelBuilder.Entity().Property(p=>p.Id).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);

你能分享你的整个用户模型吗?是的,我编辑了这篇文章
public class User
{
    [Key]
    [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
    public int Id { get; set; }

    [Required]
    [MaxLength(30)]
    public string Username { get; set; }

    [Required]
    [MaxLength(30)]
    public string Password { get; set; }

    public List<Note> Notes { get; set; }

    public User(string username, string password)
    {
        this.Username = username;
        this.Password = password;
    }
}
modelBuilder.Entity<User>()
            .HasKey(p => new { p.Id });

modelBuilder.Entity<User>().Property(p => p.Id).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);