Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 反序列化不起作用_C#_Serialization - Fatal编程技术网

C# 反序列化不起作用

C# 反序列化不起作用,c#,serialization,C#,Serialization,我试图序列化和反序列化一个对象,但它返回为null。为什么会这样 car carToSerialize = new car() { engine = .... }; NetDataContractSerializer serializer = new NetDataContractSerializer(); MemoryStream stream = new MemoryStream(); serializer.Serialize(stream, carToSerialize); str

我试图序列化和反序列化一个对象,但它返回为null。为什么会这样

car carToSerialize = new car() {
   engine = ....
};

NetDataContractSerializer serializer = new NetDataContractSerializer();
MemoryStream stream = new MemoryStream();
serializer.Serialize(stream, carToSerialize);
stream.Seek(0, SeekOrigin.Begin);
car deserializedCar = (car)serializer.Deserialize(stream);

为了确保可以使用NetDataContractSerializer,car类应该具有以下内容

  • car类由DataContractAttribute属性修饰
  • 应使用DataMemberAttribute修饰可序列化成员。没有必要让该成员公开

如果您能提供一个简短但完整的程序来演示问题,而不仅仅是一个片段,那将非常有帮助。将序列化数据保存到文件/输出并查看保存的内容如何?作为找出问题的第一步:)你的
汽车
是什么样子的?(即,您是否添加了属性以支持
DataContractSerializer
?)是否确定car是可序列化类型?是否使用DataMember属性装饰car类的属性?