【发布时间】:2017-01-06 13:07:14
【问题描述】:
我在 Web API 项目中使用 FluentValidation.WebApi 6.2.1.0。有没有办法使用 FluentValidation 验证枚举并返回自定义消息?
我的控制器动作如下,
public IHttpActionResult Get([FromUri]CheckUpdateVM info)
{
...
}
我的模特,
[Validator(typeof(CheckUpdateVMValidator))]
public class CheckUpdateVM
{
public DeviceTypes Device { get; set; }
}
我正在寻找这样的东西,
public class CheckUpdateVMValidator : AbstractValidator<CheckUpdateVM>
{
public CheckUpdateVMValidator()
{
RuleFor(x => x.Device).Must(x => Enum.IsDefined(typeof(DeviceTypes), x)).WithMessage("xxx");
}
}
使用上面的代码,模型绑定器验证“设备”参数的值并以错误响应。但我无法自定义错误消息。 (如果我将“设备”属性类型设置为字符串,这可以正常工作。)
【问题讨论】:
标签: asp.net asp.net-web-api enums fluentvalidation