公共類的usermodel { [必需(的ErrorMessage = 「樂NOM EST requis。」)] [UIHint( 「字符串」)] [數據類型(數據類型的複雜模型.Text)] [DisplayName(「Nom」)] public string Lastname {get;組; }如何可以驗證使用ASP.NET MVC 2
[DataType(DataType.Text)]
[UIHint("String")]
[DisplayName("Prénom")]
public string Firstname { get; set; }
[Required(ErrorMessage="La spécialité principale est requise.")]
[DisplayName("Spécialité principale")]
public Speciality PrimarySpeciality { get; set; }
[DisplayName("Spécialité secondaire")]
public Speciality SecondarySpeciality { get; set; }
}
public class SpecialityModel
{
[Required(ErrorMessage = "La spécialité est requise.")]
public int Id { get; set; }
public string Name { get; set; }
}
如何要求主要專業而不是第二個? 似乎Required屬性只檢查可爲空,但Specialty不會爲空。
編輯:
閱讀這篇文章http://bradwilson.typepad.com/blog/2010/01/input-validation-vs-model-validation-in-aspnet-mvc.html 後,我正在重新制定我的問題:如何防止主要對象之前,發生子性能驗證。正如你所看到的,SecondarySpeciality不是必需的,但仍然可以獲得Address類的DataAnnotation的驗證原因。 我在想,mvc2不能用於模型驗證。 我應該用普通模型去? (這意味着更多的映射,但如果它的工作......)
看來這個問題是更多關於如何確認正在發生。 請參閱http://bradwilson.typepad.com/blog/2010/01/input-validation-vs-model-validation-in-aspnet-mvc.html – mateo 2010-08-25 19:05:58