2011-12-05 23 views

回答

5

的MVC框架允許你把DataAnnotations在模型中,但嚴格講DataAnnotations應放置在一個視圖模型,而不是在映射到數據庫模型。

+0

+1 - 確切地說DataAnnotations應放置在哪裏(viewModel) –

2

不,它不違反該模式,如果它是你的ViewModel

一個ViewModel是,通常情況下,一個簡單的POCO(普通老式CLR對象) 不包含業務邏輯,大多隻有性能。

@Html.DisplayFor(x => x.MyProperty)方法將查找顯示屬性 並使用該信息。所以正確的方法是在視圖中使用屬性而不是任何類型的硬編碼文本。

希望這有助於

+0

解釋會很好。 –

+0

我的回答已更新。 – dknaack

+0

+1 - 提及viewModel –

0

從視圖中分離出你的領域模型和有貧血域模型(http://en.wikipedia.org/wiki/Anemic_domain_model)之間有一條細線。我個人認爲可以在特定位置公開您的域模型作爲視圖模型的屬性。

我個人對貧血領域模型的看法就是它的責任「促進事務腳本和類似用例之間的代碼重複,減少代碼重用。」

+0

同意,我大部分時間都是這樣做的。 – Romias