Abaikan atribut kelas dalam Rangka Kerja Entiti 4.1 Kod Didahulukan
Setelah memahami batasan NotAvailableUntil dalam EF 5, mari kita terokai alternatif untuk mengabaikan sifat dalam EF 4.1.
Anotasi data
Gunakan anotasi sifat NotMapped untuk mengecualikan sifat tertentu daripada pemetaan Kod Pertama. Contohnya:
<code>public class Customer { public int CustomerID { get; set; } public string FirstName { get; set; } public string LastName { get; set; } [NotMapped] public int Age { get; set; } }</code>
API Fasih
Sebagai alternatif, gunakan Fluent API dengan mengatasi fungsi OnModelCreating:
<code>protected override void OnModelCreating(DbModelBuilder modelBuilder) { modelBuilder.Entity<Customer>().Ignore(t => t.LastName); base.OnModelCreating(modelBuilder); }</code>
Pembetulan tentang perbezaan [NotMapped]
Atribut [NotMapped] harus menghalang lajur daripada dibuat dalam pangkalan data. Jika lajur masih dibuat walaupun menggunakan anotasi, sahkan bahawa anda menggunakan versi terkini EF (4.3).
Asp.NET Core 2.0 dan ke atas
Dalam Asp.NET Core 2.0, anda masih boleh menggunakan anotasi atribut NotMapped:
<code>public class Customer { public int Id { get; set; } public string FirstName { get; set; } public string LastName { get; set; } [NotMapped] public int FullName { get; set; } }</code>
Atau gunakan Fluent API dalam kelas SchoolContext anda:
<code>protected override void OnModelCreating(ModelBuilder modelBuilder) { modelBuilder.Entity<Customer>().Ignore(t => t.FullName); base.OnModelCreating(modelBuilder); }</code>
Atas ialah kandungan terperinci Bagaimana untuk Mengabaikan Sifat Kelas dalam Rangka Kerja Entiti 4.1 dan Kemudian?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!