当前位置: 首页 > 编程语言 > C#

反序列化时找不到构造函数?分享

时间:2023-04-10 18:19:40 C#

反序列化时找不到构造函数?使用System.Collections.Generic;使用System.Linq;使用系统文本;使用System.Runtime.Serialization.Formatters.Binary;使用System.IO;namespaceSerializationTest{[Serializable]classFoo:Dictionary{}classProgram{staticvoidMain(string[]args){Foofoo=newFoo();foo[1]="左";foo[2]="正确";BinaryFormatter格式化程序=newBinaryFormatter();MemoryStream流=新的MemoryStream();formatter.Serialize(stream,foo);stream.Seek(0,SeekOrigin.Begin);格式化程序。反序列化(流);在最后一行中,由于格式优化器找不到Foo的构造函数,因此抛出了SerializationException。这是为什么?在classFoopublicFoo(){}publicFoo(SerializationInfoinfo,StreamingContextcontext)中附加以下代码行:base(info,context){}该类需要一个具有相关序列化参数的构造函数。以上是C#学习教程:Cannotfindtheconstructorduringdeserialization?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: