FoolProof MVC GreaterThan не работает со временем
Я добавил ненавязчивый.. и т. Д. Все работает, за исключением случаев, когда у меня есть GreaterThan на моем втором поле даты
Дата начала: 2017/02/25 12:00 Дата окончания: 2017/02/25 13:03
кажется, что дата окончания не больше, я предполагаю, что она выполняет сравнение строк по сравнению с правильной датой, потому что это допустимый диапазон, поскольку конечная дата больше начальной, но если мы проводим сравнение строк, то дата окончания не больше
вот мой код
[Required]
[DataType(DataType.DateTime)]
[Display(ResourceType = typeof(DisplayResources), Name = "StartDateTime")]
public DateTime StartDateTime { get; set; }
[Required]
[DataType(DataType.DateTime)]
[Display(ResourceType = typeof(DisplayResources), Name = "EndDateTime")]
[GreaterThan("StartDateTime")]
public DateTime EndDateTime { get; set; }
`
обновить это компонент, который я использую https://eonasdan.github.io/bootstrap-datetimepicker/ который использует moment.js для своих форматов даты
1 ответ
Я думаю, что это работает для вас.
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
{
if (StartDateTime> EndDateTime)
{
yield return
new ValidationResult(errorMessage: "End date must be greater than Start date",
memberNames: new[] { "EndDateTime" });
}
}