.NET Framework 2.0 から、ジェネリックという機能が追加になりました。C++ な人なら、STL でご存じ。
この中に特定のクラスのコレクションを作成する、List<T> があります。これを含むクラスのシリアル化について。
[Seializable()]
public class A : ISerializable {
private List<B> BList;
...
}
このクラスを SoapFormatter でシリアル化しようとすると、List<B> がシリアル化できないという例外が発生する。
ところが、
[Serializable()]
public class BList : List<B> {
...
}
[Serializable()]
public class ADash : ISerializable {
private BList BList;
...
}
このクラスADash は、シリアル化が出来る。なぜ?
投稿日時 : 2005年10月16日 20:54