2017-04-18 39 views
1

我有這個類是在Entify框架定義(數據庫第一),其中包含以下幾列如何在此改變默認的實體框架構造

ID (guid) 
Name (string) 
Active (bool) 
Some Other stuff... 

name列實際上應該是一些「計算」的結果是是類似於「CurrentYear + ParentName」

我可以很容易地獲得信息之前保存,但我想我是之前獲得該信息。

我知道,無論我在edmx中放入默認值的任何信息都會右移,並且我檢查了生成的文件。我看到了一個正常的構造函數。

所以我的問題其實很簡單。我如何「覆蓋」這個構造函數。如果我不能,有沒有辦法在實體的默認值中添加一些計算?

謝謝。

+1

的問題會。每當你這樣做,你的改變將被恢復。 –

+0

您可以將具有參數的構造函數添加到部分文件中。 –

+0

@MightyBadaboom:我知道。這是我的主要問題。格特,它聽起來很奇怪,但我不能,在這種情況下,有一個帶參數的consructor。 –

回答

0

試試這個:當你更新與數據庫的EDMX文件

// your custom class 
public partial class MyEntityClass 
{ 
    public string CustomName => CurrentYear.ToString() + ParentName; 
} 

// EF Generated class 
public partial class MyEntityClass 
{ 
    public int ID { get; set; } 
    public int CurrentYear { get; set; } 
    public string ParentName { get; set; } 
} 
+0

對於簡單情況,這是一個好主意,但假設我需要從鏈接的對象中獲取信息以供參考。 –

+0

Tbh還沒有嘗試過類似的東西,如果我會找到一些解決方案,我會發布^^ – QuietNaN

+0

其實,這將意味着雖然在數據庫中找不到CustomName?這不能做到這一點 –