例外をシリアライズする方法
.NET Remotingで例外も通信してくれないかと調べていたら、例外をシリアル化・逆シリアル化できるようにすればいいことがわかった。
http://msdn.microsoft.com/ja-jp/library/dd296859.aspx
↑を超参考に例外を以下のように定義する。
[Serializable()] public class MyException : ApplicationException { //普通に使うコンストラクタ public MyException() { } //逆シリアル化コンストラクタ public MyException(SerializationInfo info, StreamingContext context) : base(info, context) { } }
ポイントは、
例外にデータを持たせたい時には、もうひと工夫必要だけど、上記のページを見れば書いてあるので省略。