小编Con*_*nor的帖子

在 C# 中反序列化之前是否有检查对象的类类型?

例如,我有几种类型的汽车正在序列化为 .car 文件(这是一个学校项目)。我有三种不同的车型:福特、雷克萨斯和道奇。我可以很好地拯救他们。但是根据我的程序的当前架构,当我反序列化时,我需要在反序列化之前知道类型。例如我这样序列化:

if (CurrentCar.GetType() == typeof(Ford))
{
   var JSON_CAR = JsonSerializer.Serialize((Ford)CurrentCar);
   writer.Write(JSON_CAR);
}
Run Code Online (Sandbox Code Playgroud)

当我反序列化时,我需要在反序列化之前知道类型:

CurrentCar = JsonSerializer.Deserialize<???>(reader.ReadString());
Run Code Online (Sandbox Code Playgroud)

我怎样才能实现这个目标?谢谢。

c# serialization json json-deserialization json-serialization

3
推荐指数
1
解决办法
1612
查看次数