Nah Anotasi Data itu harus melakukan trik, mungkin ada sesuatu yang terkait dengan Penyedia PostgreSQL.
Dari dokumentasi EF Core:
Bergantung pada penyedia basis data yang digunakan, nilai dapat dihasilkan oleh sisi klien oleh EF atau dalam basis data. Jika nilai dihasilkan oleh database, maka EF dapat menetapkan nilai sementara saat Anda menambahkan entitas ke konteks. Nilai sementara ini kemudian akan digantikan oleh nilai yang dihasilkan basis data selama
SaveChanges
.
Anda juga dapat mencoba dengan konfigurasi Fluent Api ini:
modelBuilder.Entity<Foo>()
.Property(f => f.Id)
.ValueGeneratedOnAdd();
Tapi seperti yang saya katakan sebelumnya, saya pikir ini adalah sesuatu yang berhubungan dengan penyedia DB. Coba tambahkan baris baru ke DB Anda dan periksa nanti apakah nilai yang dihasilkan ke Id
kolom.