MVC5 将两个可为空的日期与流畅的验证进行比较
MVC5 comparing two nullable dates with fluent validation
如何在流畅的验证中编写规则来检查两个可为空的日期,因为开始日期需要早于结束日期。
我的思路是
RuleFor(c => c.StartDate)
.NotEmpty()
如果开始日期不为空且结束日期不为空则比较
像这样-
RuleFor(ac => ac.StartDate)
.NotEmpty().WithMessage("*Required")
RuleFor(ac => ac.EndDate)
.NotEmpty().WithMessage("*Required")
.GreaterThan(r => r.StartDate);
注-
数据类型必须相同才能进行比较。
或者更方便 source-
RuleFor(m => m.StartDate)
.NotEmpty()
.WithMessage("Start Date is Required");
RuleFor(m => m.EndDate)
.NotEmpty().WithMessage("End date is required")
.GreaterThan(m => m.StartDate.Value)
.WithMessage("End date must after Start date")
.When(m => m.StartDate.HasValue);
如何在流畅的验证中编写规则来检查两个可为空的日期,因为开始日期需要早于结束日期。
我的思路是
RuleFor(c => c.StartDate)
.NotEmpty()
如果开始日期不为空且结束日期不为空则比较
像这样-
RuleFor(ac => ac.StartDate)
.NotEmpty().WithMessage("*Required")
RuleFor(ac => ac.EndDate)
.NotEmpty().WithMessage("*Required")
.GreaterThan(r => r.StartDate);
注-
数据类型必须相同才能进行比较。
或者更方便 source-
RuleFor(m => m.StartDate)
.NotEmpty()
.WithMessage("Start Date is Required");
RuleFor(m => m.EndDate)
.NotEmpty().WithMessage("End date is required")
.GreaterThan(m => m.StartDate.Value)
.WithMessage("End date must after Start date")
.When(m => m.StartDate.HasValue);