1.首先,确保已在项目中安装了NuGet包FluentValidation.AspNetCore。
2.添加启用FluentValidation的服务注册:
services.AddControllers().AddFluentValidation();
3.为DTO(数据传输对象)创建验证类。例如,如果要验证一个名为Person的DTO,可以创建一个名为PersonValidator的验证器类,然后添加所需的验证规则:
public class PersonValidator : AbstractValidator
4.在控制器中使用验证器:
[ApiController] [Route("[controller]")] public class PersonController : ControllerBase { [HttpPost] public IActionResult Post(Person person) { var validator = new PersonValidator(); var validationResult = validator.Validate(person); if (!validationResult.IsValid) { return BadRequest(validationResult.Errors); }
// Perform business logic
return Ok();
}
}
在上面的示例中,我们在控制器中创建了一个PersonValidator实例,并使用其Validate方法验证我们的DTO对象。如果验证失败,则返回BadRequest响应。如果验证成功,则执行业务逻辑并返回Ok响应。