2012-12-11 26 views
2

兩年前我做了MVC 2。我現在使用MVC 4,並想確認一些事情。數據註解和MVC 4

1)在MVC 4中,我們不需要創建ModelMetadata類來使用數據註釋進行數據驗證註釋。我們可以簡單地註釋模型類本身。換句話說,如果我們使用EDM生成器爲我們生成一個模型和相應的類,那麼我們可以創建一個具有相同名稱的一組新的部分類,並在這些部分類本身上使用數據註釋屬性。

我們並不需要創建一個新的類型的模型元數據類和裝飾類數據註解/屬性,就像這裏:http://www.asp.net/mvc/tutorials/older-versions/models-%28data%29/validation-with-the-data-annotation-validators-cs

2)對於數據的註釋工作,我們只需要一個參考到System.ComponentModel.DataAnnotations而不是Microsoft.Web.Mvc.DataAnnotations。

3)我們不需要在Global.asax文件的Application_Start事件中實例化默認的模型聯編程序。

請您確認我的理解是否正確?

回答

4
  1. 我記得,MVC 2和MVC 4在這方面沒有區別。您不必在MVC 2中使用MetadataType,您可以使用部分類生成模型。
  2. 我無法在Microsoft.Web.Mvc.DataAnnotations上找到任何MSDN文檔,但對於使用MVC的數據註釋,您需要System.ComponentModel.DataAnnotationsSystem.Web.Mvc(它包含一些其他屬性,如HiddenInputAttribute)。
  3. 不,你不這樣做,它是由框架實例化的。
+0

非常感謝。 –

0

實際上,對於問題1,您需要使用元數據類以與先前使用MVC2相同的方式註釋模型優先EF類的屬性。當您使用代碼優先的EF類時,您可以直接對它們進行註釋 - 這些註釋將用於生成數據庫,以及用於搭建視圖。