Error.cs 1.2 KB

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