Heim >Backend-Entwicklung >C++ >Wie ignoriere ich Klasseneigenschaften in Entity Framework 4.1 und höher?

Wie ignoriere ich Klasseneigenschaften in Entity Framework 4.1 und höher?

Patricia Arquette
Patricia ArquetteOriginal
2025-01-13 16:22:17422Durchsuche

How to Ignore Class Properties in Entity Framework 4.1 and Later?

Klassenattribute in Entity Framework 4.1 Code First ignorieren

Nachdem wir die Einschränkungen von NotAvailableUntil in EF 5 verstanden haben, erkunden wir Alternativen zum Ignorieren von Eigenschaften in EF 4.1.

Datenanmerkung

Verwenden Sie die NotMapped-Eigenschaftsanmerkung, um bestimmte Eigenschaften von der Code-First-Zuordnung auszuschließen. Zum Beispiel:

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

Fluent API

Alternativ können Sie die Fluent-API verwenden, indem Sie die OnModelCreating-Funktion überschreiben:

<code>protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
   modelBuilder.Entity<Customer>().Ignore(t => t.LastName);
   base.OnModelCreating(modelBuilder);
}</code>

Korrektur des Unterschieds [NotMapped]

Das

[NotMapped]-Attribut sollte verhindern, dass Spalten in der Datenbank erstellt werden. Wenn trotz der Verwendung von Anmerkungen weiterhin Spalten erstellt werden, stellen Sie sicher, dass Sie die neueste Version von EF (4.3) verwenden.

Asp.NET Core 2.0 und höher

In Asp.NET Core 2.0 können Sie weiterhin die NotMapped-Attributanmerkung verwenden:

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

Oder verwenden Sie die Fluent-API in Ihrer SchoolContext-Klasse:

<code>protected override void OnModelCreating(ModelBuilder modelBuilder)
{
    modelBuilder.Entity<Customer>().Ignore(t => t.FullName);
    base.OnModelCreating(modelBuilder);
}</code>

Das obige ist der detaillierte Inhalt vonWie ignoriere ich Klasseneigenschaften in Entity Framework 4.1 und höher?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn