Мне кажется, что вы можете захотеть взглянуть на что-то вроде «буфера протокола», который (в отличие от BinaryFormatter
) является высокопроизводительным, с низкой пропускной способностью, переносимый / кроссплатформенный толерантный к версии формат двоичной сериализации (ничего себе).
К счастью, в .NET есть версии, такие как protobuf-net .
(раскрытие: я автор, но это бесплатно; я не пытаюсь вам что-либо продать - просто сэкономит вам много времени и усилий)
BinaryFormatter
очень ... хрупкий; он специфичен для .NET и имеет относительно плохую устойчивость к версиям. Единственный раз, когда я использую его, это негласно для связи между AppDomain
с на одной машине. В противном случае я бы посмотрел на сериализаторы на основе контракта, такие как XmlSerializer
, DataContractSerializer
или protobuf-net.