Browse Source

邮箱手机号校验支持可空

懒得勤快 2 years ago
parent
commit
6136a82390

+ 1 - 1
Masuit.Tools.Abstractions/Masuit.Tools.Abstractions.csproj

@@ -3,7 +3,7 @@
         <TargetFrameworks>netstandard2.0;netstandard2.1;net461;net5;net6;net7</TargetFrameworks>
         <LangVersion>latest</LangVersion>
         <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
-        <Version>2.5.9.7</Version>
+        <Version>2.5.9.8</Version>
         <Authors>懒得勤快</Authors>
         <Description>Masuit.Tools基础公共库,包含一些常用的操作类,大都是静态类,加密解密,反射操作,Excel简单导出,权重随机筛选算法,分布式短id,表达式树,linq扩展,文件压缩,多线程下载和FTP客户端,硬件信息,字符串扩展方法,日期时间扩展操作,中国农历,大文件拷贝,图像裁剪,验证码,断点续传,集合扩展等常用封装。</Description>
         <Copyright>懒得勤快,长空X</Copyright>

+ 7 - 2
Masuit.Tools.Abstractions/Validator/IsEmailAttribute.cs

@@ -25,6 +25,11 @@ namespace Masuit.Tools.Core.Validator
         /// </summary>
         private string BlockList { get; }
 
+        /// <summary>
+        /// 是否允许为空
+        /// </summary>
+        public bool AllowEmpty { get; set; }
+
         /// <summary>
         /// 可在配置文件AppSetting节中添加EmailDomainWhiteList配置邮箱域名白名单,EmailDomainBlockList配置邮箱域名黑名单,英文分号(;)或感叹号(!)或逗号(,)分隔,每个单独的元素支持正则表达式
         /// </summary>
@@ -43,7 +48,7 @@ namespace Masuit.Tools.Core.Validator
         /// <returns></returns>
         public override bool IsValid(object value)
         {
-            if (value == null)
+            if (value == null && !AllowEmpty)
             {
                 ErrorMessage = "邮箱不能为空!";
                 return false;
@@ -104,4 +109,4 @@ namespace Masuit.Tools.Core.Validator
             return false;
         }
     }
-}
+}

+ 7 - 2
Masuit.Tools.Abstractions/Validator/IsPhoneAttribute.cs

@@ -7,6 +7,11 @@ namespace Masuit.Tools.Core.Validator
     /// </summary>
     public class IsPhoneAttribute : ValidationAttribute
     {
+        /// <summary>
+        /// 是否允许为空
+        /// </summary>
+        public bool AllowEmpty { get; set; }
+
         /// <summary>
         /// 验证手机号码是否合法
         /// </summary>
@@ -14,7 +19,7 @@ namespace Masuit.Tools.Core.Validator
         /// <returns></returns>
         public override bool IsValid(object value)
         {
-            if (value is null)
+            if (value is null && !AllowEmpty)
             {
                 ErrorMessage = "手机号码不能为空";
                 return false;
@@ -28,4 +33,4 @@ namespace Masuit.Tools.Core.Validator
             return false;
         }
     }
-}
+}

+ 1 - 1
Masuit.Tools.AspNetCore/Masuit.Tools.AspNetCore.csproj

@@ -17,7 +17,7 @@
         <Product>Masuit.Tools.AspNetCore</Product>
         <PackageId>Masuit.Tools.AspNetCore</PackageId>
         <LangVersion>latest</LangVersion>
-        <Version>1.1.9.7</Version>
+        <Version>1.1.9.8</Version>
         <RepositoryType></RepositoryType>
         <GeneratePackageOnBuild>True</GeneratePackageOnBuild>
         <FileVersion>1.1.9</FileVersion>

+ 1 - 1
Masuit.Tools.Core/Masuit.Tools.Core.csproj

@@ -6,7 +6,7 @@
 官网教程:https://ldqk.org/55
 github:https://github.com/ldqk/Masuit.Tools
         </Description>
-        <Version>2.5.9.7</Version>
+        <Version>2.5.9.8</Version>
         <Copyright>Copyright © 懒得勤快</Copyright>
         <PackageProjectUrl>https://github.com/ldqk/Masuit.Tools</PackageProjectUrl>
         <PackageTags>Masuit.Tools,工具库,Utility,Crypt,Extensions</PackageTags>

+ 1 - 1
Masuit.Tools.Net45/package.nuspec

@@ -2,7 +2,7 @@
 <package>
   <metadata>
     <id>Masuit.Tools.Net45</id>
-    <version>2.5.9.7</version>
+    <version>2.5.9.8</version>
     <title>Masuit.Tools</title>
     <authors>懒得勤快</authors>
     <owners>masuit.com</owners>

+ 1 - 1
Masuit.Tools/package.nuspec

@@ -2,7 +2,7 @@
 <package>
   <metadata>
     <id>Masuit.Tools.Net</id>
-    <version>2.5.9.7</version>
+    <version>2.5.9.8</version>
     <title>Masuit.Tools</title>
     <authors>懒得勤快</authors>
     <owners>masuit.com</owners>