Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Kolom yang dihitung di EF Code First

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()


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara Membuat Tabel dengan Kolom Identitas

  2. Cara Mengganti Nilai Null dengan Tidak Diketahui dalam Pernyataan Pilihan di SQL Server - Tutorial SQL Server / TSQL Bagian 111

  3. Parameterisasi klausa SQL IN

  4. 3 Cara untuk Mengetahui apakah Kolom adalah Kolom yang Dihitung di SQL Server

  5. Cara menyisipkan jeda baris dalam string SQL Server VARCHAR/NVARCHAR