我有一個項目,它使用 BinaryFormatter 序列化具有字元串和布爾的結構集合?數據類型。
序列化/反序列化工作正常,但是如果我要更改完成工作的程序集,它無法反序列化,因為二進製文件中的標頭表明它需要Assembly x而不是Assembly y處理數據。
是否可以將序列化/反序列化設置為與程序集無關?
您可以通過將自定義 SerializationBinder 分配給格式化程序來控制二進制格式化程序如何解析其類型。通過這種方式,您不需要弄亂 AppDomain 的解析事件,並且消除了由此產生的意外副作用的風險。
MSDN上有一個詳細的範例。
引用自:https://stackoverflow.com/questions/505611