Я создаю это решение для ведения журнала elobrate для использования в правительственных учреждениях, где нужно что-то делать определенным образом.Одна из вещей заключается в том, что мы накапливаем нераскрытые исключения до последней точки в Application_Error в global.asax, где когда дело касается того, что мы получаем все исключения, вложенные в объект исключения, и сериализуем эту информацию в базу данных.Есть код, который ходит по списку.Нет ни одного исключения.Может быть много вложенных исключений.Мы создаем приложения ASP.NET, где у нас есть эта обширная система регистрации исключений.Исключение происходит.Оно всплывает, где может случиться другое, окружая другого.Он всплывает до последней точки - Application_Error в global.asax, где есть вся эта логика, которая записывает информацию о машине в базу данных.Во время этого может возникнуть исключение, которое охватывает другие исключения
В моем случае WCF задействован ТОЛЬКО потому, что задействованные системы находятся в отдельных зонах, а WCF используется для связи.и вы НЕ МОЖЕТЕ сериализовать / передать объект исключений .NET через границу службы, поэтому я определил класс / структуру данных C # для представления исключений:
[DataContract]
public class ExceptionStructure
{
[DataMember]
public string Message { get; set; }
[DataMember]
public string StackTrace { get; set; }
[DataMember]
public List<ExceptionStructure> InnerException { get; set; }
}
Во-первых, эта структура может не работать, поскольку InnerExceptionЧИТАЙТЕ ТОЛЬКО, поэтому мне нужна помощь и в новом классе.Мне нужны только поля Message и StackTrace, а также InnerExceptions.
Все, что мне нужно, - это получить объект исключения .NET, который может иметь или не иметь внутренние исключения, может кто-нибудь помочь мне написать код, который будет заполнятьодин из этих классов ExceptionStructure?
Также было бы неплохо написать код для десериализации одного из них в список исключений .NET с другой стороны?Если вы видите лучшую идею структуры, не стесняйтесь.