Asp.net mvc 3 ASP.NET MVC-两个文本字段上的一个验证程序
我有一个有趣的客户要求 我有一个控件需要这样显示:Asp.net mvc 3 ASP.NET MVC-两个文本字段上的一个验证程序,asp.net-mvc-3,Asp.net Mvc 3,我有一个有趣的客户要求 我有一个控件需要这样显示: Date of xxx [ mm ][ yy ] 标签上有两个文本字段——一个数字表示月份,另一个数字表示年份 虽然有两个文本字段,但我们希望在验证两个字段后运行验证 一个页面上还有许多这样的控件。如何将其打包,以便我可以调用: @Laberfor(x => x.Datexxx) @EditorFor(x => x.Datexxx) 提前感谢如果控件是强类型的,则可以实现IValidatableObject及其验证方法
Date of xxx [ mm ][ yy ]
标签上有两个文本字段——一个数字表示月份,另一个数字表示年份
虽然有两个文本字段,但我们希望在验证两个字段后运行验证
一个页面上还有许多这样的控件。如何将其打包,以便我可以调用:
@Laberfor(x => x.Datexxx)
@EditorFor(x => x.Datexxx)
提前感谢如果控件是强类型的,则可以实现IValidatableObject及其验证方法 假设您的模型如下所示:
public class CombinedDateViewModel : IValidatableObject
{
[Required]
public int month { get; set; }
[Required]
public int year { get; set; }
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
{
if(month > 12 || month < 1)
yield return new ValidationResult("Month is out of range");
if(year < 0 || year > 2020)
yield return new ValidationResult("Year is out of range");
}
}
生成的验证结果将显示在验证摘要中