【问题标题】:JavascriptSerializer Deserialize into Json require a full class?JavascriptSerializer 反序列化成 Json 需要完整的类吗?
【发布时间】:2012-10-16 02:26:04
【问题描述】:

JavascriptSerializer 中使用Deserialize 方法时,您的目标类中需要什么?

例如,我有一个包含人员的 JSON 字符串。每个人都包含一个姓名、年龄和性别。如果我只需要从这条消息中获取姓名和年龄,我的目标班级还需要性别部分吗?反序列化是否知道如何只从 JSON 字符串中获取现有字段并留下其他字段?以下是否可行(请注意,personinfo 中没有性别)?

List<person> mypeople = JavascriptSerializer.Deserialize <List<person>>(jsonstring);

class person
    {
        public List<personinfo> personinfo{ get; set; }
    }
class personinfo
    {
        public string name { get; set; }
        public int age { get; set; }
    }

【问题讨论】:

  • 是的,它会起作用,但你为什么不试试呢?
  • 我试过了。但是,运行它后,名称和年龄似乎为空。我发布了这个以排除目标类中缺少的字段。谢谢!

标签: c# json serialization javascriptserializer


【解决方案1】:

Deserialize() 了解如何忽略部分字符串。您只需在目标类中指定所需的字段。

我还发现这个问题的内容非常有用,因为我是 C# 新手 - Using System.Web.Script.Serialization.JavascriptSerializer to deserialize JSON - how to?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-20
    • 2021-09-08
    • 2011-07-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多