1)除了从对象到文件/内存的序列化......什么时候必须添加“[Serializable]”属性?
2)为什么我们必须添加?为什么我们不能直接将对象保存到.NET库的某些已知格式中?
3)我怎样才能告诉我们必须添加这个属性?在什么条件下?
非常感谢!
答案 0 :(得分:0)
1)除了从对象到文件/内存的序列化......什么时候必须添加“[Serializable]”属性?
当您想要将它或直接或间接包含它的对象序列化到任何其他媒体时,例如套接字,RMI,......
2)为什么我们必须添加它?
因为这是他们设计它的方式。安全原因让人想起:例如,您确实不希望密码可序列化。
为什么我们不能直接将对象保存到.NET库的某些已知格式中?
首先,因为序列化在.NET之前已经存在了几年;其次,还有其他各种方法可以实现,例如SOAP。
3)如何判断我们必须添加此属性的情况?在什么条件下?
你只是在这里再问两次问题。如果你得到一个NotSerializableException
命名类,你肯定需要这样做,并且异常并没有表明你不想在一开始就无序序列化的事情序列化。