|
1
8
有无数的预滚序列化库可以在这里提供帮助。BinaryFormatter在这里有一些(IMO)不受欢迎的特性—特别是它只能在两端使用完全相同的(嗯,差不多)dll。 XmlSerializer、DataContractSerializer和JavaScriptSerializer是很好的基于文本的实现,在兼容的 合同 两端(相同的属性等-不一定是相同的类型/版本)。 如果您有适度的带宽需求,或者需要更好的CPU性能,我建议使用protobuf net(注意:我写了它),这是一个快速的二进制序列化程序,可能会有帮助。 |
|
|
2
4
如果通信信道的两边都有 确切地 相同的程序集和 完全相同版本的程序集 ,或者以某种方式从程序中引用,或者住在GAC中。
如果您想要一种机制更能容忍版本不匹配,请考虑使用
如果需要压缩格式,可以考虑查看 Google Protocol Buffers . |
|
|
3
1
如果发送字符串列表(或字符串的dict)是您想要的,那没问题,只需发送字符串列表(或dict)。您的问题是因为您试图发送另一个项目无法识别的数据类型。你甚至不需要更改任何功能,只需要更改发送的内容。或者,您可以从接收数据的程序中引用test1。 |
|
4
0
编写您自己的对象从/到字节转换器,而不是使用BinaryStream应该可以工作。 如果坚持,请将此对象移动到其自己的程序集,并将其添加到两侧作为参考。这样,.NET Framework应该能够反序列化对象。 |
|
|
A B · C#Excel自动调整列避免长文本时出错 11 月前 |
|
|
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 11 月前 |
|
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 11 月前 |
|
|
Sei · Avalonia/WPF将路由器传递到控制模板 1 年前 |