更具体地说,当异常包含自定义对象时,自定义对象本身可以序列化也可以不序列化。
举个例子:
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; }
}
}
如果将此Exception序列化和反序列化,则将不保留两个自定义属性(ResourceName和ValidationErrors)。属性将返回null。
是否存在用于实现自定义异常的序列化的通用代码模式?
波斯汪
BIG阳