2016-05-30 6 views
0

Was soll ich mit Entity Framework tun, um berechnete Felder zu erstellen?Entity Framework zum Erstellen von berechneten (nicht zugeordneten) Feldern?

Ich verwende zuerst Entiy Framowork 6 mit Datenbank. Sagen wir, ich habe eine Entität mit ID, Name, initialQuantity und finalQuantity. finalQuantity ist immer 5% mehr als meine initialQuantity. Ich möchte dieses Feld in der may-Datenbank nicht beibehalten. Ich möchte es nicht zuordnen, aber ich möchte die Eigenschaft in meiner Entität.

Wie kann ich das tun? Muss ich diese Eigenschaft zu meiner edmx-Datei hinzufügen? Muss ich Vererbung erstellen, Teilklasse ??

Auch nach weiterem Lesen scheint es, ich kann keine Entität erstellen, die überhaupt nicht zugeordnet ist. Ok, was ist die Alternative? Und kann ich eine Entität erstellen, die einem Feld zugeordnet ist, das nicht zugeordnet ist?

Antwort

0

Verwenden [NotMapped] Datenaufbelichtung:

using System.ComponentModel.DataAnnotations; 
public class MyEntity 
{ 
    public MyEntity() 
    { 
    } 

    [Key] 
    public int Id { get; set; } 
    public decimal initialQuantity { get; set; } 

    [NotMapped] 
    public decimal finalQuantity => initialQuantity*1.05m; 
} 

Wenn Sie Ihr Unternehmen nicht abbilden wollen, tun Sie es nicht in Ihre DbContext Klasse setzen.

+0

Begann zu antworten, bevor Sie geklärt haben, dass dies zuerst die Datenbank ist. Mein Beispiel gilt zuerst für den Code. – MarcinS