luq*_*qui 5 .net c# mono serialization
我有一个非常复杂的对象网络,我想在不受信任的环境中序列化和反序列化(Web浏览器,使用Unity 3D).普通BinaryFormatter序列化工作正常,但反序列化因"访问私有字段"错误而崩溃.当我在本地运行时它非常有效.
我宁愿不通过公开所有私有字段来使我的代码库变得糟透了.如果没有这样做,反序列化在不受信任的环境中工作的最佳方法是什么?我愿意改变序列化方法,BinaryFormatter这是最容易上手的方法.
更新我不想阻止序列化访问我的私有数据,我想允许序列化访问我的私有数据而不必公开它,从而损害我的代码的封装.
谢谢.
好吧,如果您想通过序列化阻止私有字段访问,您可能需要转向 Xml 序列化,甚至可能是 Json 序列化。
您可以通过在私有字段上放置 NonSerializaed 属性来防止私有字段序列化,但是当开发人员希望其字段包含有效值并且没有考虑到这些字段值在传输到 Unity 插件时会丢失的事实时,您可能会遇到问题。