У меня есть унаследованная кодовая база, разработанная в .NET 1.1. Когда я перенес его на 2.0, я переименовал сборку. Теперь я обнаружил, что необходимо будет прочитать старые файлы, содержащие объекты, сериализованные старой сборкой и .NET 1.1. Некоторые поля успешно десериализованы, но большинство игнорируется. Если я включаю FormatterAssemblyStyle.Full, я получаю сообщение об ошибке, например:
Элемент 'T_VERSION+s_sys_ver
' в классе 'MyNamespace.T_VERSION
' отсутствует в сериализованном потоке и не помечен с помощью System.Runtime.Serialization.OptionalFieldAttribute.
Проверка двоичного файла показывает, что T_VERSION+s_sys_ve
r присутствует в некоторой форме , а тип поля не изменился.
Есть ли какой-нибудь способ десериализации файлов старого формата, если не считать ручного обратного инжиниринга старого формата и написания моей собственной процедуры десериализации вручную?