我正在尝试在C#中序列化Exception对象。但是,由于Exception类未标记为,因此似乎是不可能的[Serializable]。有办法解决这个问题吗?
[Serializable]
如果在应用程序执行期间出了点问题,我想知道发生的异常。
我的第一反应是将其序列化。
我之前所做的是创建一个自定义的Error类。它封装了有关Exception的所有相关信息,并且可以XML序列化。
[Serializable] public class Error { public DateTime TimeStamp { get; set; } public string Message { get; set; } public string StackTrace { get; set; } public Error() { this.TimeStamp = DateTime.Now; } public Error(string Message) : this() { this.Message = Message; } public Error(System.Exception ex) : this(ex.Message) { this.StackTrace = ex.StackTrace; } public override string ToString() { return this.Message + this.StackTrace; } }