[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
в поле GUID работает в Entity Framework 6.x, может быть еще не в EF Core!
Итак, решение:
1) Сначала напишите BaseModel
Класс выглядит следующим образом:
public class BaseModel
{
[Key]
public Guid Id { get; set; }
public DateTime CreatedOn { get; set; } = DateTime.UtcNow;
public DateTime? UpdatedOn { get; set; }
public DateTime LastAccessed { get; set; }
}
2) Тогда метод OnModelCreating()
в вашем DbContext
должен выглядеть следующим образом:
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Entity<YourEntity>().Property(x => x.Id).HasDefaultValueSql("NEWID()");
modelBuilder.Entity<User>().HasData(
new User() { Id = Guid.NewGuid(), Email = "Mubeen@gmail.com", Name = "Mubeen", Password = "123123" },
new User() { Id = Guid.NewGuid(), Email = "Tahir@gmail.com", Name = "Tahir", Password = "321321" },
new User() { Id = Guid.NewGuid(), Email = "Cheema@gmail.com", Name = "Cheema", Password = "123321" }
);
}
Теперь создайте новую миграцию и обновите базу данных соответственно,Надеюсь, что ваша проблема будет решена!