3

Привет Я пытаюсь реализовать интерфейс IValidableObject в проекте ASPNET MVC 4. Моя модель находится в другой сборке, когда фреймворк выполняет мой метод проверки, он не показывает validationContext и показывает мне эту ошибку: validationContext Не удается получить доступ к нестационарному члену внешнего типа «AS.Core.Model.Horario.Validate» через вложенные тип 'AS.Core.Model.Horario'IValidatableObject в отдельных сборках

Понятно, что проблема в отдельных сборках, но я не знаю, что делать, чтобы сделать эту работу, кто-нибудь может мне помочь?

Это мой код:

public class Horario : IValidatableObject 
{ 
    [Range(0, 6, ErrorMessage = "Dia inválido")] 
    public byte Dia { get; set; } 

    [DataType(DataType.Time, ErrorMessage = "Horário de início inválido")] 
    public TimeSpan? HorarioInicio { get; set; } 

    [DataType(DataType.Time, ErrorMessage = "Horário fim inválido")] 
    public TimeSpan? HorarioFim { get; set; } 

    public IEnumerable<ValidationResult> Validate(ValidationContext validationContext) 
    { 
     if (HorarioInicio != null && HorarioFim == null || HorarioFim != null && HorarioInicio == null) 
     { 
      yield return new ValidationResult("Horário inválido"); 
     } 
    } 
} 

ответ

0

Вам нужно написать ViewModel, который будет IValidatableObject и перенести данные из него в свой бизнес-модели в контроллере после проверки.

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