我的項目是在ASP.NET MVC 3中。在我的域中,我有一個由Entity Framework定義的模型對象。爲了驗證屬性,我簡單地擴展生成的EF對象,並添加一個包含我所有驗證屬性的元數據類。如何在模型對象上執行復雜的驗證?
[MetadataType(typeof(ContactInformationMetaData))]
public partial class ContactInformation
{
}
public class ContactInformationMetaData
{
[Required]
public string FirstName { get; set; }
[Required]
public string LastName { get; set; }
public string Phone { get; set; }
[EmailValidator]
public string Email { get; set; }
}
這在大多數情況下都很有效,但現在我有了一個更復雜的場景。我不希望電話和電子郵件屬性是必需的,但我希望其中一個是必需的。換句話說,我想要求設置電子郵件或電話或者兩者都設置,但不是無。
我該如何執行這種複雜的驗證?如果我創建一個自定義驗證屬性,我會在哪裏放置它,以及如何工作?任何幫助表示讚賞。
對不起。我顯然在查找搜索結果。 – Chev 2012-02-07 22:47:45