VerificationModel.cs 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. // ***********************************************************************
  2. // Assembly : HZH_Controls
  3. // Created : 2019-09-27
  4. //
  5. // ***********************************************************************
  6. // <copyright file="VerificationModel.cs">
  7. // Copyright by Huang Zhenghui(黄正辉) All, QQ group:568015492 QQ:623128629 Email:623128629@qq.com
  8. // </copyright>
  9. //
  10. // Blog: https://www.cnblogs.com/bfyx
  11. // GitHub:https://github.com/kwwwvagaa/NetWinformControl
  12. // gitee:https://gitee.com/kwwwvagaa/net_winform_custom_control.git
  13. //
  14. // If you use this code, please keep this note.
  15. // ***********************************************************************
  16. using System;
  17. using System.Collections.Generic;
  18. using System.ComponentModel;
  19. using System.Linq;
  20. using System.Text;
  21. namespace HZH_Controls.Controls
  22. {
  23. /// <summary>
  24. /// 验证规则
  25. /// </summary>
  26. public enum VerificationModel
  27. {
  28. /// <summary>
  29. /// 无
  30. /// </summary>
  31. [Description("无"), VerificationAttribute()]
  32. None = 1,
  33. /// <summary>
  34. /// 任意字母数字下划线
  35. /// </summary>
  36. [Description("任意字母数字下划线"), VerificationAttribute(@"^[a-zA-Z_0-1]*$", "请输入任意字母数字下划线")]
  37. AnyChar = 2,
  38. /// <summary>
  39. /// 任意数字
  40. /// </summary>
  41. [Description("任意数字"), VerificationAttribute(@"^[\-\+]?\d+(\.\d+)?$", "请输入任意数字")]
  42. Number = 4,
  43. /// <summary>
  44. /// 非负数
  45. /// </summary>
  46. [Description("非负数"), VerificationAttribute(@"^(\+)?\d+(\.\d+)?$", "请输入非负数")]
  47. UnsignNumber = 8,
  48. /// <summary>
  49. /// 正数
  50. /// </summary>
  51. [Description("正数"), VerificationAttribute(@"(\+)?([1-9][0-9]*(\.\d{1,2})?)|(0\.\d{1,2})", "请输入正数")]
  52. PositiveNumber = 16,
  53. /// <summary>
  54. /// 整数
  55. /// </summary>
  56. [Description("整数"), VerificationAttribute(@"^[\+\-]?\d+$", "请输入整数")]
  57. Integer = 32,
  58. /// <summary>
  59. /// 非负整数
  60. /// </summary>
  61. [Description("非负整数"), VerificationAttribute(@"^(\+)?\d+$", "请输入非负整数")]
  62. UnsignIntegerNumber = 64,
  63. /// <summary>
  64. /// 正整数
  65. /// </summary>
  66. [Description("正整数"), VerificationAttribute(@"^[0-9]*[1-9][0-9]*$", "请输入正整数")]
  67. PositiveIntegerNumber = 128,
  68. /// <summary>
  69. /// 邮箱
  70. /// </summary>
  71. [Description("邮箱"), VerificationAttribute(@"^(([0-9a-zA-Z]+)|([0-9a-zA-Z]+[_.0-9a-zA-Z-]*[0-9a-zA-Z]+))@([a-zA-Z0-9-]+[.])+([a-zA-Z]{2}|net|NET|com|COM|gov|GOV|mil|MIL|org|ORG|edu|EDU|int|INT)$", "请输入正确的邮箱地址")]
  72. Email = 256,
  73. /// <summary>
  74. /// 手机
  75. /// </summary>
  76. [Description("手机"), VerificationAttribute(@"^(\+?86)?1\d{10}$", "请输入正确的手机号")]
  77. Phone = 512,
  78. /// <summary>
  79. /// IP
  80. /// </summary>
  81. [Description("IP"), VerificationAttribute(@"(?=(\b|\D))(((\d{1,2})|(1\d{1,2})|(2[0-4]\d)|(25[0-5]))\.){3}((\d{1,2})|(1\d{1,2})|(2[0-4]\d)|(25[0-5]))(?=(\b|\D))", "请输入正确的IP地址")]
  82. IP = 1024,
  83. /// <summary>
  84. /// Url
  85. /// </summary>
  86. [Description("Url"), VerificationAttribute(@"^[a-zA-z]+://(//w+(-//w+)*)(//.(//w+(-//w+)*))*(//?//S*)?$", "请输入正确的网址")]
  87. URL = 2048,
  88. /// <summary>
  89. /// 身份证号
  90. /// </summary>
  91. [Description("身份证号"), VerificationAttribute(@"^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$", "请输入正确的身份证号")]
  92. IDCardNo = 4096,
  93. /// <summary>
  94. /// 正则验证
  95. /// </summary>
  96. [Description("自定义正则表达式"), VerificationAttribute()]
  97. Custom = 8192,
  98. }
  99. }