AbpValidationException.cs 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel.DataAnnotations;
  4. using System.Runtime.Serialization;
  5. using Abp.Logging;
  6. namespace Abp.Runtime.Validation
  7. {
  8. /// <summary>
  9. /// This exception type is used to throws validation exceptions.
  10. /// </summary>
  11. [Serializable]
  12. public class AbpValidationException : AbpException, IHasLogSeverity
  13. {
  14. /// <summary>
  15. /// Detailed list of validation errors for this exception.
  16. /// </summary>
  17. public IList<ValidationResult> ValidationErrors { get; set; }
  18. /// <summary>
  19. /// Exception severity.
  20. /// Default: Warn.
  21. /// </summary>
  22. public LogSeverity Severity { get; set; }
  23. /// <summary>
  24. /// Constructor.
  25. /// </summary>
  26. public AbpValidationException()
  27. {
  28. ValidationErrors = new List<ValidationResult>();
  29. Severity = LogSeverity.Warn;
  30. }
  31. /// <summary>
  32. /// Constructor for serializing.
  33. /// </summary>
  34. public AbpValidationException(SerializationInfo serializationInfo, StreamingContext context)
  35. : base(serializationInfo, context)
  36. {
  37. ValidationErrors = new List<ValidationResult>();
  38. Severity = LogSeverity.Warn;
  39. }
  40. /// <summary>
  41. /// Constructor.
  42. /// </summary>
  43. /// <param name="message">Exception message</param>
  44. public AbpValidationException(string message)
  45. : base(message)
  46. {
  47. ValidationErrors = new List<ValidationResult>();
  48. Severity = LogSeverity.Warn;
  49. }
  50. /// <summary>
  51. /// Constructor.
  52. /// </summary>
  53. /// <param name="message">Exception message</param>
  54. /// <param name="validationErrors">Validation errors</param>
  55. public AbpValidationException(string message, IList<ValidationResult> validationErrors)
  56. : base(message)
  57. {
  58. ValidationErrors = validationErrors;
  59. Severity = LogSeverity.Warn;
  60. }
  61. /// <summary>
  62. /// Constructor.
  63. /// </summary>
  64. /// <param name="message">Exception message</param>
  65. /// <param name="innerException">Inner exception</param>
  66. public AbpValidationException(string message, Exception innerException)
  67. : base(message, innerException)
  68. {
  69. ValidationErrors = new List<ValidationResult>();
  70. Severity = LogSeverity.Warn;
  71. }
  72. }
  73. }