一尘不染

Json.net序列化/反序列化派生类型?

c#

json.net(newtonsoft)
我正在浏览文档,但找不到任何有关此方法或最佳方法的信息。

public class Base
{
    public string Name;
}
public class Derived : Base
{
    public string Something;
}

JsonConvert.Deserialize<List<Base>>(text);

现在,序列化列表中有Derived对象。如何反序列化列表并获取派生类型?


阅读 227

收藏
2020-05-19

共1个答案

一尘不染

如果您要在其中存储类型text(在这种情况下应该如此),则可以使用JsonSerializerSettings

请参阅:如何使用Newtonsoft JSON.NET将JSON反序列化为IEnumerable

不过要小心。 使用除TypeNameHandling = TypeNameHandling.None可能导致安全漏洞之外的任何方法

2020-05-19