| 12345678910111213141516171819202122232425262728293031323334353637383940 |
- using System;
- namespace Quadarax.Foundation.Core.Exceptions
- {
- public static class ExceptionExc
- {
- public static int GetCode(this Exception e)
- {
- if (!e.Data.Contains("Code"))
- return -1;
- return int.Parse(e.Data["Code"]?.ToString() ?? "-1");
- }
- public static void SetCode(this Exception e, int code)
- {
- e.Data.Add("Code", code);
- }
- public static string Dump(this Exception e)
- {
- var level = 0;
- var sb = new System.Text.StringBuilder();
- sb.Append("[#").Append(level).Append("]:").AppendLine(e.Message);
- var inner = e.InnerException;
- while (inner != null)
- {
- sb.Append("[#").Append(level).Append("]:").AppendLine(inner.Message);
- inner = inner.InnerException;
- }
- if (e.StackTrace != null)
- {
- sb.AppendLine("[#0] Stack list:");
- sb.AppendLine(e.StackTrace);
- }
- return sb.ToString();
- }
- }
- }
|