Error.cs 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. using System.Text;
  2. using Quadarax.Foundation.Core.Exceptions;
  3. namespace Quadarax.Foundation.Core.Data
  4. {
  5. public class Error : IError
  6. {
  7. #region *** Properties ***
  8. public string Message { get; }
  9. public int Code { get; }
  10. public ErrorLevelEnum Level { get; }
  11. #endregion
  12. #region *** Constructors ***
  13. public Error(string message, int code, ErrorLevelEnum level)
  14. {
  15. Message = message;
  16. Code = code;
  17. Level = level;
  18. }
  19. public Error(Exception exception)
  20. {
  21. if (exception==null)
  22. throw new ArgumentNullException(nameof(exception));
  23. Message = exception.Message;
  24. Code = exception.GetCode();
  25. }
  26. #endregion
  27. #region *** Operations ***
  28. public override string ToString()
  29. {
  30. var sb = new StringBuilder();
  31. sb.Append("Error");
  32. if (Code != 0)
  33. sb.Append("[").Append(Code).Append("]");
  34. sb.Append(":").Append(Message);
  35. return sb.ToString();
  36. }
  37. #endregion
  38. }
  39. }