0

我通過Google找到的所有東西都是指Code First,所以我想知道什麼Key屬性實際上在做數據庫優先設計?我主要好奇,因爲很多實體都包含複合鍵,所以我一直在將Key註釋添加到相應的屬性中,但這真的有必要嗎?如果是這樣,我從中獲得什麼?「Key」數據註釋在數據庫中首先做了什麼?

回答

2

如果您使用的是數據庫優先工作流程(即您的解決方案中有一個.edmx文件)。那麼Key屬性將不起作用。

但是,如果您使用代碼優先工作流映射到現有數據庫,則Key屬性會首先告知代碼該屬性是實體主鍵的一部分。

有關不同工作流程的更多信息,請參閱此視頻:Visual Studio Toolbox: Entity Framework Part 1

+0

Thanks!我很好奇它是否提供了任何類型的錯誤/約束檢查,但它看起來只針對Code First工作流程。 – MisterIsaak 2012-01-27 15:35:55

+1

雖然Key屬性沒有效果,但從'ValidationAttribute'(例如'Required'和'StringLength')繼承的屬性在'SaveChanges()'(針對所有工作流)上得到驗證。 – bricelam 2012-01-30 18:45:38

相關問題