FluentValidation:一个非常受欢迎的,用于构建强类型验证规则的.NET 库

1. FluentValidation:一个非常受欢迎的,用于构建强类型验证规则的.NET 库

请求参数实体定义:

FluentValidation 验证类定义:

过滤器:ActionFilter中OnActionExecuting()方法

Controller下的Action 定义:

当请求参数不满足要求时,调试下,Postman的返回结果:

使用FluentValidation时的压测结果:

不使用FluentValidation时的压测结果:

结果汇总:

 

转载于:https://www.cnblogs.com/coderchris/p/9563959.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用C#内置的`System.Random`类来生成随机密码,然后使用密码度校验器来确保密码度。以下是一个示例代码: ```csharp using System; using System.Linq; using System.Security.Cryptography; using System.Text; using Microsoft.AspNetCore.Identity; public static class PasswordGenerator { private static readonly RandomNumberGenerator Random = RandomNumberGenerator.Create(); public static string GeneratePassword(int length = 12) { const string validChars = "ABCDEFGHJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*?_-"; var password = new char[length]; for (var i = 0; i < length; i++) { var index = GetRandomNumber(0, validChars.Length - 1); password[i] = validChars[index]; } var passwordString = new string(password); var passwordValidator = new PasswordValidator<IdentityUser>(); var validationResult = passwordValidator.ValidateAsync(null, passwordString).Result; if (validationResult.Succeeded) { return passwordString; } return GeneratePassword(length); } private static int GetRandomNumber(int min, int max) { var randomNumber = new byte[1]; Random.GetBytes(randomNumber); var asciiValue = Convert.ToInt32(randomNumber[0]); var range = max - min + 1; var randomValue = Math.Floor((double)(asciiValue / 256d * range)); return (int)(min + randomValue); } } ``` 这个代码使用`RandomNumberGenerator`类生成随机数,并使用`PasswordValidator`类校验密码度。你可以按照自己的需要修改密码长度和密码度校验规则

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值