Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.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_Json.net_Deserialization - Fatal编程技术网

C# 将数据反序列化为适当的处理程序对象

C# 将数据反序列化为适当的处理程序对象,c#,serialization,json.net,deserialization,C#,Serialization,Json.net,Deserialization,对于任何复杂的系统,都很可能有许多对象序列化数据 例如,假设每个序列化对象派生自IData。我们有多个ISerializer对象,它们通过Json.net将数据序列化为,反序列化该数据并确定适当的ISerializer对象来处理数据的最佳实践是什么 当我反序列化一些IData时,我不知道调用HandleData的ISerializer对象是哪个。为什么我们会有多个ISerializer对象?请给出一个示例场景,其中存在多个ISerializer对象。假设您有一个独立对象的集合。每个人都有非常专业

对于任何复杂的系统,都很可能有许多对象序列化数据

例如,假设每个序列化对象派生自
IData
。我们有多个
ISerializer
对象,它们通过Json.net将数据序列化为,反序列化该数据并确定适当的
ISerializer
对象来处理数据的最佳实践是什么


当我反序列化一些
IData
时,我不知道调用
HandleData
ISerializer
对象是哪个。

为什么我们会有多个
ISerializer
对象?请给出一个示例场景,其中存在多个
ISerializer
对象。假设您有一个独立对象的集合。每个人都有非常专业的知识,与其他人无关。我没有一个必须了解每个对象的序列化中心点,而是有一个接口ISerializer,如果对象想要序列化某些数据,可以实现该接口ISerializer。然后,我的序列化例程将成为整个集合的枚举,查看哪个obj实现了接口,并对它们调用serialize(),返回我写入json的基类型。