Evg*_*vin 3 asp.net-mvc fluentvalidation asp.net-mvc-3 asp.net-mvc-4
我在ASP.NET MVC 4项目中使用FluentValidation框架进行服务器端和客户端验证.
是否有原生(非黑客)方式来验证字符串长度只有最大长度,或只有最小长度?
例如这样:
var isMinLengthOnly = true;
var minLength = 10;
RuleFor(m => m.Name)
.NotEmpty().WithMessage("Name required")
.Length(minLength, isMinLengthOnly);
Run Code Online (Sandbox Code Playgroud)
默认错误消息模板应该不是
'Name' must be between 10 and 99999999 characters. You entered 251 characters.
但
'Name' must be longer 10 characters. You entered 251 characters.
并且应该支持客户端属性,例如黑客RuleFor(m => m.Name.Length).GreaterThanOrEqual(minLength)(不确定它是否有效)不适用.
sre*_*ree 10
您可以使用
RuleFor(x => x.ProductName).NotEmpty().WithMessage("Name required")
.Length(10);
Run Code Online (Sandbox Code Playgroud)
得到消息
'Name' must be longer 10 characters. You entered 251 characters.
Run Code Online (Sandbox Code Playgroud)
如果你想检查最小和最大长度
RuleFor(x => x.Name).NotEmpty().WithMessage("Name required")
.Must(x => x.Length > 10 && x.Length < 15)
.WithMessage("Name should be between 10 and 15 chars");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5440 次 |
| 最近记录: |