0

我想知道是否可以在EF中自定義我的實體,它們不一定對應於數據庫表中的所有字段。這樣我可以利用內置的MVC驗證功能。在EF 4中定製實體並使用驗證功能

下面是我想要做的簡化示例。所以我們可以說我已經定義爲一個人表:

-Id,
雜牌,
- 出生地。

在視圖中,用戶將鍵入其名稱,然後選擇出生國家,然後選擇其位置。由於位置屬於一個國家,所以不需要將出生國存儲在人員表中,但是需要在視圖中選擇該國家以便位置選項被填充。

因此,該國在視圖中是必需的價值。

我知道我可以在服務器上手動驗證這個所需的值,但我想知道是否可以在名爲CountryId的EF實體中定義一個額外的屬性,該屬性將被標記爲必需,然後獲取所有默認值MVC驗證功能。

如果這是一個常見的做法鏈接到有用的教程將不勝感激。

感謝

回答

3

我會說你可以使用MVVM模式,拆你的ViewModels可以不同,你的數據模型。所以你可以在其上設置驗證屬性。 該博客更詳細地描述了這種方法post: 其背後的想法是讓ViewModel以某種方式驗證它,並將數據放入業務模型的相應字段中。 您可以使用某種Mapper解決方案。 AutoMapper是一個很好的開始。