0

Мой проект находится в 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; } 
} 

Это прекрасно работает большую часть времени, но теперь у меня более сложный сценарий. Я не хочу, чтобы свойства «Телефон» и «Электронная почта» были необходимы, но я хочу, чтобы ОДИН из них требовался. Другими словами, я хочу потребовать установить либо электронную почту, либо телефон или оба, но не один.

Как выполнить комплексную проверку следующим образом? Если я создаю специальный атрибут проверки, где бы я его разместил, и как это будет работать? Любая помощь приветствуется.

ответ

Смежные вопросы