2013-04-27 98 views
5

我正在使用實體框架4.1並使用數據庫第一種方法生成我的類。我的解決方案中有一個EDMX文件。將屬性添加到實體框架數據庫第一個生成的類

我想使用MetadataTypeAttribute方法將屬性添加到我的類中,這似乎是在編輯T4模板之外進行此操作的推薦方法,但是,我似乎無法使其工作,因爲我不斷收到此編譯錯誤:

'病人' 是 'PatientManagementSystem.Patient' 和 'PatientManagementSystem.Models.Patient'

這裏之間的不明確的引用是我使用的代碼:

[MetadataTypeAttribute(typeof(PatientMetadata))] 
public partial class Patient 
{ 
} 

public class PatientMetadata 
{ 

    [Required] 
    public string LastName {get; set;} 

} 

這是錯誤發生,因爲我實際上沒有這個類,因爲我在EDMX第一,一切都在做數據庫?

謝謝! 跳蚤

+1

什麼是你的EDMX和上面的類的命名空間?他們應該匹配。 – 2013-04-27 21:47:24

+0

亞當,命名空間爲EDMX是'empty'(此外,這是一個類庫項目,是除了我的MVC項目)和我的課的名稱空間是:'PatientManagementSystems.Models' – Flea 2013-04-28 01:07:55

+0

亞當,這就是問題所在。我不得不修覆命名空間,現在它似乎工作。如果您想複製您所說的內容並將其作爲答案,我會爲您添加標記。謝謝! – Flea 2013-04-28 01:32:30

回答

3

確保兩者都在相同的命名空間。由於它是一個部分類,因此您正在修改的類也必須位於相同的名稱空間中,或者它不是同一個類。

相關問題