IValidatableObject в отдельных сборках
Привет, я пытаюсь реализовать интерфейс IValidableObject в проекте ASPNET MVC 4. Моя модель находится в другой сборке, когда каркас выполняет мой метод validate, он не показывает validationContext и показывает мне эту ошибку: validationContext Невозможно получить доступ к нестатическому члену внешнего типа 'AS.Core.Model.Horario.Validate' через вложенный тип 'AS.Core.Model.Horario'
Понятно, что проблема в отдельных сборках, но я понятия не имею, что делать, чтобы сделать эту работу, кто-нибудь может мне помочь?
Это мой код:
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");
}
}
}
1 ответ
Вам нужно написать ViewModel, который будет IValidatableObject, и перенести данные из него в вашу бизнес-модель в контроллере после проверки.