为了账号安全,请及时绑定邮箱和手机立即绑定

.NET 二进制序列化程序是否对程序集信息进行编码?

.NET 二进制序列化程序是否对程序集信息进行编码?

C#
临摹微笑 2021-10-09 14:07:39
我一直在开发一款游戏,其中一部分过程将是自定义级别的工具和文件格式。我创建了一个小型控制台应用程序,该应用程序生成一个仅包含原始数据类型的“LevelAsset”对象。当我尝试在我的 Unity 游戏中反序列化该数据时,问题就出现了。我没有从我的控制台应用程序中复制任何代码,而是从头开始重写了“LevelAsset”对象和反序列化代码。然而,当我运行游戏时,我收到一条错误消息,说我缺少“Level Tool, version=1.0.0.0”程序集,它来自我的原始控制台应用程序。这是怎么发生的。二进制序列化器编码信息是关于项目的吗?编辑:因此,经过进一步调查,似乎 BinnaryFormatter 确实以文件头的形式包含有关项目的信息。所以我现在的新问题是:我到底如何在没有标题的情况下进行序列化?
查看完整描述

1 回答

?
慕姐8265434

TA贡献1813条经验 获得超2个赞

因此,经过一番挖掘后,它发生了相当明显的事情。BinaryFormatter 确实在其文件头中对项目信息进行了编码。如果你想避免这种情况,你应该改用二进制编写器。


查看完整回答
反对 回复 2021-10-09
  • 1 回答
  • 0 关注
  • 212 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信