在.NET Core 中使用 FluentValidation 进行规则验证 (2)

修改Startup类中的ConfigureServices方法:

public void ConfigureServices(IServiceCollection services) { services.AddControllers().AddFluentValidation(); services.AddTransient<IValidator<User>, UserValidator>(); }

注意:这个地方的生命周期是 Transient。

这样,在调用注册接口的时候,会自动进行规则验证:

[HttpPost] public IActionResult Register(User newUser) { return Ok(); }

然后,我们再尝试传入参数来调用接口:

{ "FirstName": "赵钱孙李周吴郑王冯陈褚卫蒋沈韩杨朱秦尤许何吕施张", "LastName": "张" }

很明显,验证不通过,接口会返回这样的错误信息:

{ "type": "https://tools.ietf.org/html/rfc7231#section-6.5.1", "title": "One or more validation errors occurred.", "status": 400, "traceId": "|c4523c02-4899b7f3df86a629.", "errors": { "FirstName": [ "您的名字长度已经超出了限制!" ] } }

希望对您有帮助,您可以在官方文档中找到更多的用法。

原文链接: https://www.code4it.dev/blog/fluentvalidation

最后

欢迎扫码关注我们的公众号 【全球技术精选】,专注国外优秀博客的翻译和开源项目分享,也可以添加QQ群 897216102

在.NET Core 中使用 FluentValidation 进行规则验证

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wppfgy.html