Cześć, piszę aplikacje w aps.net mvc uzywająć entity framework code first i idywidualnych kont użytkowników.

Połączyłam klasę dziedziczącą po identitydbcontext z moim podstawowym dbcontext i wygląda to tak:

clasa CrudContext:

public class CrudContext : IdentityDbContext<User>
    {
        public CrudContext()
            : base("name=PlanszoWebDatabase")
        {
        }

        public void SetModified(object entity)
        {
            Entry(entity).State = EntityState.Modified;
        }

        public void SetAdd(object entity)
        {
            Entry(entity).State = EntityState.Added;
        }

        
        public  DbSet<Game> Games { get; set; }
        public  DbSet<Rate> Rates { get; set; }
        public  DbSet<Comment> Comments { get; set; }
        public  DbSet<Review> Reviews { get; set; }
        public DbSet<Category> Categorys { get; set; }

      protected override void OnModelCreating(DbModelBuilder modelBuilder)
       {
            modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
            base.OnModelCreating(modelBuilder);
        }

    } 

Klasa User:

   public class User: IdentityUser
    {
        public override string Id
        {
            get { return this.UserId.ToString(); }
        }
        [Key]
        [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
        public  int UserId { get; set; }
        public String FirstName { get; set; }
        public String LastName { get; set; }
        public bool Moderator { get; set; }
        public bool Administrator { get; set; }
        public string Email { get; set; }
        public string Login { get; set; }
        public string Password { get; set; }
        public DateTime DateOfBirth { get; set; }
        public byte[] Photo { get; set; }

        public virtual ICollection<Rate> Rates { get; set; }
        public virtual ICollection<Review> Reviews { get; set; }
        public virtual ICollection<Comment> Comments { get; set; }
       
    }

i inicjalizator przy którym wyskakuje błąd:

 public class DatabaseInitializer : DropCreateDatabaseAlways<CrudContext>
    {
        
        protected override void Seed(CrudContext context)
        {

            var categorys = new List<Category>
            {
            new Category{Name = "Adventure" },
           
            };


            categorys.ForEach(s => context.Categorys.Add(s));
            context.SaveChanges();


            var users = new List<User>
            {
            new User{FirstName = "Naj", LastName = "Ikslawok", Moderator=false, Administrator=false,  UserName = "Palindrom", Password = "nieczytaj", Email = "[email protected]", DateOfBirth = DateTime.Parse("1990-01-02")},
            new User{FirstName = "Jan", LastName = "Kowalski", Moderator=false, Administrator=false,  UserName = "Different", Password = "ytajaw", Email = "[email protected]", DateOfBirth = DateTime.Parse("1991-05-04")},
           
            };


            users.ForEach(s => context.Users.Add(s));
            context.SaveChanges();

fragment do miejsca w którym pojawia się błąd

pojawia mi się taki błąd w linijce z save changes przy userach :
Violation of PRIMARY KEY constraint 'PK_dbo.AspNetUsers'. Cannot insert duplicate key in object 'dbo.AspNetUsers'. The duplicate key value is (0).\r\nThe statement has been terminated

Bardzo proszę o wszelką pomoc. I pytanie czy w ogóle ta klasa User może służeć jako AplicationUser z Identity i jako zwykły User w bazie danych?