我目前正在处理异常,并创建了一个实现父 Exception 类的自定义异常。
当我尝试序列化或反序列化这样的自定义异常时,问题就出现了。
错误信息如下: "System.Runtime.Serialization.SerializationException: 'Member 'InnerException' was not found.'"
我已经参考了许多互联网上的资料,但无法解决这个问题。我将代码附在此正文中。
当我尝试序列化或反序列化这样的自定义异常时,问题就出现了。
错误信息如下: "System.Runtime.Serialization.SerializationException: 'Member 'InnerException' was not found.'"
我已经参考了许多互联网上的资料,但无法解决这个问题。我将代码附在此正文中。
[Serializable]
public class CustomException : Exception
{
public const string DefaultExceptionDescription = "temp";
public string ExceptionDescription { get; set; }
public string ReferenceId { get; private set; } = "temp";
public CustomException(string ExceptionDescription = DefaultExceptionDescription)
{
ExceptionDescription = ExceptionDescription;
}
[SecurityPermission(SecurityAction.Demand, SerializationFormatter = true)]
protected CustomException(SerializationInfo info, StreamingContext context) : base(info, context)
{
if (info != null)
{
ExceptionDescription = info.GetString(nameof(ExceptionDescription));
ReferenceId = info.GetString(nameof(ReferenceId));
}
}
[SecurityPermission(SecurityAction.Demand, SerializationFormatter = true)]
public override void GetObjectData(SerializationInfo info, StreamingContext context)
{
if (info != null)
{
info.AddValue(nameof(ExceptionDescription), ExceptionDescription);
info.AddValue(nameof(ReferenceId), ReferenceId);
}
base.GetObjectData(info, context);
}
}
感谢您的提前支持!
InvalidOperationException
上对我进行操作,因此我怀疑它是在您的工作下面的某些东西 - 也就是说,这不是您自定义的Exception
,可能是任何Exception
的问题。你能解决它吗? - ruffin