35得票6回答
C#对象二进制序列化

我想将一个对象进行二进制序列化,并将结果保存到数据库中。Person person = new Person(); person.Name = "something"; MemoryStream memorystream = new MemoryStream(); BinaryFormatt...

28得票5回答
使用不同程序集版本进行二进制反序列化

我有一个项目,使用BinaryFormatter对由字符串和布尔型数据类型组成的结构体集合进行序列化。 序列化/反序列化工作正常,但如果我更改执行操作的程序集,则反序列化失败,因为二进制文件中的头部指示需要 程序集x 而不是 程序集y 来处理数据。 是否可以设置序列化/反序列化为程序集不可知?

24得票2回答
二进制格式化程序和反序列化复杂对象

无法反序列化以下对象图。当在 BinaryFormmater 上调用反序列化方法时,会出现该异常: System.Runtime.Serialization.SerializationException : The constructor to deserialize an object of...

24得票1回答
在哪里可以找到BinaryFormatter序列化格式的官方规范? (.Net)

我想知道BinaryFormatter的序列化格式是什么。我找到了这个网站,它提供了一些很好的信息,但是它是通过逆向工程获得的,并且不完整。这个网站 我在哪里可以找到BinaryFormatter序列化格式的官方规范?

23得票6回答
有没有一种高性能的方法来替换.NET5中的BinaryFormatter?

在.NET5之前,我们通过以下代码对字节/对象进行序列化/反序列化: private static byte[] StructToBytes<T>(T t) { using (var ms = new MemoryStream()) ...

21得票5回答
如何使BinaryFormatter在不同的应用程序中反序列化

我正在使用BinaryFormatter将一个类实例数组序列化到文件中。在同一应用程序中,我可以很好地反序列化这个数组。但是当我尝试在另一个应用程序中执行相同的反序列化操作(该应用程序引用了一个执行此操作的公共文件)时,我会收到以下错误:{"Could not load file or ass...

17得票3回答
二进制格式化程序的替代方案

一个由BinaryFormatter序列化的大小为50 MB的128³个double数组。序列化一个有两个double字段的128³个struct的数组需要超过20秒的处理时间且占用150MB空间。 是否有快速简便的替代方案可以生成紧凑的文件?我的期望是上述例子分别只需占用16和32 MB,...

16得票1回答
当序列化一个对象时,如何忽略事件订阅者?

使用 BinaryFormatter 对以下类进行序列化时,由于 EventHandler 委托持有对订阅了 Roar 事件的对象的引用,因此这些对象也将被序列化。[Serializable] public class Lion { public event EventHandler ...

13得票3回答
为什么BinaryFormatter尝试序列化Serializable类上的Event?

我有一个简单的类,被标记为Serializable,并且它有一个事件。我试图将事件成员标记为NonSerialized,但编译器却抱怨了。然而当我尝试对类实例进行序列化时,BinaryFormatter会抛出一个异常,指出该事件不可序列化。这是否意味着不能序列化具有事件的类?如果是这样,那么编...

13得票6回答
二进制格式化程序反序列化时出现SerializationException异常

我遇到了以下错误: System.Runtime.Serialization.SerializationException: 无法找到程序集 'myNameSpace, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' ...