Anda dapat membuat kolom yang dihitung dalam tabel database Anda. Dalam model EF Anda cukup membubuhi keterangan properti yang sesuai dengan DatabaseGenerated
atribut:
[DatabaseGenerated(DatabaseGeneratedOption.Computed)]
public double Summ { get; private set; }
Atau dengan pemetaan yang lancar:
modelBuilder.Entity<Income>().Property(t => t.Summ)
.HasDatabaseGeneratedOption(DatabaseGeneratedOption.Computed)
Seperti yang disarankan oleh Matija Grcic dan dalam komentar, sebaiknya jadikan properti private set
, karena Anda mungkin tidak akan pernah ingin mengaturnya dalam kode aplikasi. Entity Framework tidak memiliki masalah dengan setter pribadi.
Catatan: Untuk EF .NET Core Anda harus menggunakan ValueGeneratedOnAddOrUpdate karena HasDatabaseGeneratedOption tidak ada, mis.:
modelBuilder.Entity<Income>().Property(t => t.Summ)
.ValueGeneratedOnAddOrUpdate()