当前位置: 首页 > 软件库 > Web应用开发 > 网页组件 >

FluentValidation

.NET 验证组件
授权协议 Apache
开发语言 C#
所属分类 Web应用开发、 网页组件
软件类型 开源软件
地区 不详
投 递 者 段干安和
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

FluentValidation是一个使用Linq表达式,非常流畅的小型业务对象验证组件。流畅也可以说优雅。类似链式操作。易于理解,功能完善。还可以配合MVC使用直接在页面进行验证,当你看到它的语法时,非常优雅,非常令人心动。看如下官网提供的一段验证代码:

 

using FluentValidation;
public class CustomerValidator: AbstractValidator<Customer> {
  public CustomerValidator() {
    RuleFor(customer => customer.Surname).NotEmpty();
    RuleFor(customer => customer.Forename).NotEmpty()
        .WithMessage("Please specify a first name");
    RuleFor(customer => customer.Discount).NotEqual(0)
        .When(customer => customer.HasDiscount);
    RuleFor(customer => customer.Address).Length(20, 250);
    RuleFor(customer => customer.Postcode).Must(BeAValidPostcode)
        .WithMessage("Please specify a valid postcode");
  }
  private bool BeAValidPostcode(string postcode) {
    //custom postcode validating logic goes here
  }
}
Customer customer = new Customer();
CustomerValidator validator = new CustomerValidator();
ValidationResult results = validator.Validate(customer);
 
bool validationSucceeded = results.IsValid;
IList<ValidationFailure> failures = results.Errors;

不仅可以使用Linq的操作,还能自带验证返回信息。更重要的是,组件内部已经封装好了10几种验证器。当然可以自定义一个复杂的哦。核心dll文件也不大,130多k。如果好用,可以自己移植到自己的系统哦。直接更好。

NuGet Packages:Install-Package FluentValidation

ASP.NET MVC集成包:Install-Package FluentValidation.MVC5 

介绍 via cnblogs.com/asxinyu 

  • asp.net core中使用FluentValidation FluentValidation 可以集成到asp.net core中。一旦启用,MVC会在通过模型绑定将参数传入控制器的方法上时使用FluentValidation 。 你可以通过Install-Package FluentValidation.AspNetCore来引入相应的Nuget包。 安装后,你需要在StartUp类中的Co

  • git :https://github.com/JeremySkinner/FluentValidation Example using FluentValidation; public class CustomerValidator: AbstractValidator<Customer> { public CustomerValidator() { RuleFor(custome

  • FluentValidation 可以 提供 数据效验的 解耦性,通俗讲 就是 一个类 可以 有多种效验方法,相互都是独立文件,传输和效验 完全分开。并且 自定义 效验 比较 容易。 下面讲解 使用方式 1. 首先 建立 ModifyUser2.cs文件 用于模型类 using System.ComponentModel.DataAnnotations; namespace aspnetcore

 相关资料
  • swoole框架提供了验证码生成的类库,使用者仅需要调用内置的方法即可生成图形验证码。 //Controller的方法 function vcode() { //启动会话 $this->session->start(); //输出格式为图片 $this->http->header('Content-Type', 'image/png'); //生成验证码

  • 我有一个数组对象作为道具传递数组看起来像: 我想做的是添加propTypes验证,比如 标题:道具类型。一串需要 sub_items:PropTypes.array sub_items:数组内的道具验证,如标题刺痛和isDriningboolean。 请注意如何在阵列上实现这一点。(注:我的知识非常有限,所以如果我问了一个明显愚蠢的问题,请原谅)

  • 环境 Glassfish 3.1.2内置Hibernate-Validator 4.2。

  • 本文向大家介绍PHP 验证数组类型,包括了PHP 验证数组类型的使用技巧和注意事项,需要的朋友参考一下 示例 is_array()如果变量是数组,则函数返回true。 您可以在函数中键入提示数组类型以强制执行参数类型。传递其他任何内容都会导致致命错误。 您也可以使用该gettype()功能。            

  • 问题内容: 我有一个复选框列表,其中至少一个是强制性的。我试图通过AngularJS验证来实现这一点,但是很难。下面是我的代码: 以下是plunker中的代码:http ://plnkr.co/edit/Bz9yhSoPYUNzFDpfASwt?p=preview 有没有人在AngularJS上做到这一点?使复选框成为必需,迫使我选择所有复选框值。AngularJS文档中也未记录此问题。 问题答案

  • 我正在尝试验证我的中所需的(可能的)空数组。 我正在使用和验证规则,因为我希望传递值,但它可以是空数组。 问题是,我的测试在一个空字符串(即:)上失败,这告诉我我的请求没有使用该值引发预期的。 我的测试包括给定字段的以下值: 如何测试预期的请求参数是否存在,是一个数组,可能是一个空数组? 我试过了 但是这些都没有通过验证。 发现这个老问题,描述了我的情况:它似乎不可能实现我的目标与可用的验证规则;

  • 接口说明 验证验证码 如需调用,请访问 开发者文档 来查看详细的接口使用说明 该接口仅开放给已获取SDK的开发者 如开启https功能,请求地址的协议应改为https,如:https://www.example.com/wish3dearth/api/access/v1.0.0/getLicenseInfo API地址 GET /authcenter/api/verify/v1.0.0/check

  • 问题内容: 我有一个简单的类,其属性之一为String数组。根据本文档,在数组,集合等上使用@Valid将递归地验证数组/集合的每个元素。 上面对属性的注释生成以下异常: 我正在使用Apache BVal作为验证提供程序。 问题是,上述方法正确吗? 如果不正确,那么使用bean验证来验证数组/集合的正确方法是什么? 如果正确,那么它对Apache BVal有一些限制吗? 问题答案: 通过像完成操作