Более конкретно, когда исключение содержит пользовательские объекты, которые могут или не могут быть сериализованы.
Возьмем этот пример:
public class MyException : Exception
{
private readonly string resourceName;
private readonly IList<string> validationErrors;
public MyException(string resourceName, IList<string> validationErrors)
{
this.resourceName = resourceName;
this.validationErrors = validationErrors;
}
public string ResourceName
{
get { return this.resourceName; }
}
public IList<string> ValidationErrors
{
get { return this.validationErrors; }
}
}
Если это исключение сериализовано и де-сериализовано, два пользовательских свойства (ResourceName
и ValidationErrors
) не будут сохранены. Свойства вернут null
.
Существует ли общий шаблон кода для реализации сериализации для настраиваемого исключения?