Я де/сериализую объект следующим образом:
public class myClass : ISerializable
{
public List<OType> value;
public myClass(SerializationInfo info, StreamingContext context)
{
this.value = (List<OType>)info.GetValue("value", typeof(List<OType>));
}
void ISerializable.GetObjectData(SerializationInfo info, StreamingContext context)
{
info.AddValue("value", value, typeof(List<OType>));
}
}
Объект в списке имеет атрибут Serializable. При сериализации ошибок не возникает, и список никогда не бывает пустым, но при десериализации все мои списки пустые, и я не знаю, почему.
Я отмечаю это как ответ CQ. Мне удалось создать небольшое тестовое приложение, которое правильно сериализует/десериализует объекты, которые я пытаюсь использовать, но я все еще не могу заставить его работать в моем производственном коде, но я подозреваю, что это что-то маленькое, что я пропал без вести.