2016-05-30 52 views
0

如何使用Entity Framework創建計算字段?實體框架創建計算(未映射)的字段?

我首先在數據庫中使用了Entiry Framowork 6。假設我有一個具有id,name,initialQuantity和en finalQuantity的實體。 finalQuantity總是比我的初始數量多5%。我不想在may數據庫中堅持這個字段。我不想映射它,但我想要實體中的屬性。

我該怎麼做。我是否需要將此屬性添加到我的edmx文件中?我是否需要創建繼承,部分類?

此外,進一步閱讀後似乎我不能創建一個根本沒有映射的實體。好的,那有什麼選擇?我可以創建一個映射到未映射的字段的實體嗎?

回答

0

使用[NotMapped]數據註釋:

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

如果你不想你的映射實體,不把它放在你的DbContext類。

+0

在澄清之前開始回答,首先是數據庫。我的例子首先應用於代碼。 – MarcinS