ValidateUtil.cs 863 B

1234567891011121314151617181920212223242526272829
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel.DataAnnotations;
  4. namespace PaySharp.Core.Utils
  5. {
  6. /// <summary>
  7. /// 验证工具类
  8. /// </summary>
  9. internal static class ValidateUtil
  10. {
  11. /// <summary>
  12. /// 验证
  13. /// </summary>
  14. /// <param name="obj">验证目标</param>
  15. /// <param name="data">上下文数据</param>
  16. public static void Validate(object obj, Dictionary<object, object> data)
  17. {
  18. var validationContext = new ValidationContext(obj, data);
  19. var results = new List<ValidationResult>();
  20. var isValid = Validator.TryValidateObject(obj, validationContext, results, true);
  21. if (!isValid)
  22. {
  23. throw new ArgumentNullException(results[0].ErrorMessage);
  24. }
  25. }
  26. }
  27. }