В нашем клиент-серверном приложении мы использовали BinaryFormatter для процесса сериализации.
По соображениям производительности мы пытаемся перейти на protobuf-net (http://code.google.com/p/protobuf-net/).
Наше программное обеспечение передает огромные графики с циклами между клиентом и сервером.
Теперь я ищу способ убедиться, что данные, которые были сериализованы и десериализованы с использованием protobuf, точно такие же, как те, которые обычно обрабатывались BinaryFormatter.
Сравнение по частям просто:
Я сериализую с помощью BinaryFormatter в файл.
Десериализовать этот файл снова, используя BinaryFormatter.
Затем я сериализую с помощью ProtoBuf в файл.
Десериализовать с помощью ProtoBuf из этого файла.
Сериализуйте снова, используя BinaryFormatter, в файл.
Тогда я могу просто сравнить этот файл с исходным файлом.
Однако эти два файла не равны на 100%. Поэтому теперь мне нужно найти способ отследить различия.
Может быть, есть какой-нибудь инструмент, который визуализирует данные, которые были сериализованы BinaryFormatter? Или вы знаете какого-то другого помощника, который делает глубокое сравнение и говорит мне, где различия?
Использование XMLSerializer и сравнение двух файлов XML невозможно, поскольку BinaryFormatter может сериализовать намного больше данных, чем XMLSerializer, даже без явной пометки полей.
Спасибо,
TH