使用与解决方案无关的方法,使用Newtonsoft对Json进行序列化/反序列化 背景

使用与解决方案无关的方法,使用Newtonsoft对Json进行序列化/反序列化 背景,json,json.net,Json,Json.net,我正在重新设计一个大型项目,其中数据已序列化为Json并存储在数据库中。 要序列化的对象的各种属性成员可能是从成员定义派生的类型。 因此,该地产将被定义为IFoo或BarBase,但表示SpecializedFoo或SpecializedBar实例。为了管理序列化,当前实现将类型序列化为Json并组装为Json,以便反序列化程序可以知道从何处获取类型。 在我看来,这是一种有点臭的序列化/反序列化方法,因为它将序列化数据与反序列化数据的实现联系起来 问题: 有没有一种方法可以在对象实例化之前将要反

我正在重新设计一个大型项目,其中数据已序列化为Json并存储在数据库中。 要序列化的对象的各种属性成员可能是从成员定义派生的类型。 因此,该地产将被定义为IFoo或BarBase,但表示SpecializedFoo或SpecializedBar实例。为了管理序列化,当前实现将类型序列化为Json并组装为Json,以便反序列化程序可以知道从何处获取类型。
在我看来,这是一种有点臭的序列化/反序列化方法,因为它将序列化数据与反序列化数据的实现联系起来

问题:
有没有一种方法可以在对象实例化之前将要反序列化的数据导入Newtonsoft反序列化程序的序列化管道,这样我就可以选择反序列化对象的类型。

如果您不想在
“$type”
属性中显示实际类型,那么有很多选项。您可以使用自定义的
JsonConverter
来选择类型,例如,请参阅或。自定义的
ISerialization活页夹也可能满足您的需要,请参阅或。由于围绕此主题已经有很多问题和答案,您能否提供更多详细信息来区分您的问题?感谢dbc,这正是我所要寻找的。我想奖励这个被接受的答案,但是你把它作为一个评论发布,所以我不知道如何给你评分。你选择了哪种解决方案?
JsonConverter
方法,还是
iseralizationbinder
方法?