添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

JsonConvert.DeserializeObject解析失败,映射数据为空

在使用JSON解析出错之前,使用using Newtonsoft.Json dll文件使用JsonConvert.DeserializeObject进行解析。

此次是对双层集合的json串进行数据解析

映射Class

public class Exam0
    public List<Chooses> chooses;
    public List<TxtFills> txtFills;
    public List<TxtJudes> txtJudes;
    public List<Problems> problems;
public class Chooses //选择题type
    public int id;
    public string title;
    public string correctItem;
    public int choseitemflag;
    public int startPosition;
    public string userAnswe;
    public List<ChooseItems> chooseItems;//二级集合
    public int isDel;
public class ChooseItems//选择题选项
    public string id;
    public string identify;
    public string description;
    public string picFilePath;
    public bool showPicWord;
    public string picWord;
public class TxtFills //填空题type
    public string id;
    public string identify;
    public string description;
    public string picFilePath;
    public bool showPicWord;
    public string picWord;
public class TxtJudes //判断题type
    public bool Answer;
    public int id;
    public string title;
public class Problems //简答题type
    public string answer;
    public string imagePath;
    public int id;
    public string title;

错误解析代码块

    public Exam0 Examexam0;
    string jsonstr =“【请求到的JSON串】”;
    Examexam0 =  JsonConvert.DeserializeObject<Exam0 >(jsonstr);

正确解析代码块

正确的解析中:原本使用隐式转换(为保证在类型转换过程不出现错误,使用using System中显示转换)

    public Exam0 ExamParsing(string strJson)
        Exam0 exam0 = null;
                    JsonConvert.DeserializeObjectJsonConvert.DeserializeObject解析失败,映射数据为空此次是对双层集合的json串进行数据解析映射Class错误解析代码块正确解析代码块参考网络地址JsonConvert.DeserializeObject解析失败,映射数据为空在使用JSON解析出错之前,使用using Newtonsoft.Json dll文件使用JsonConvert.DeserializeObject进行解析。此次是对双层集合的json串进行数据
    private int x, y, z;
    public int X { get { return x; } set { x = value; } }
    public int Y { get { return y; } set { y = value; } }
    public int Z { get { return z; } set { z = value; } }
    public Point(int xx, int 
第一步:使用前,需下载:Newtonsoft.Json.dll
没有的,请到我百度云盘下载
链接:https://pan.baidu.com/s/1JBkee4qhtW7XOyYFiGOL2Q提取码:b5uq
第二步:引入命名空间:using Newtonsoft.Json;
第三步:封装一个函数,方便以后使用
待解析JSON数组
1         pu...
				
JsonSerializerSettings jsSetting = new JsonSerializerSettings(); jsSetting.NullValueHandling = NullValueHandling.Ignore; var data = JsonConvert.DeserializeObject<Model>(rev, jsSetting); 参考...
byte[] arr = System.Convert.FromBase64String(buffer); private bool SendPostMessage(PostMessage post) IsoDateTimeConverter timeConverter = new IsoDateTimeConverter { DateTimeFormat = "yyyy'-'MM'-'dd HH':'mm':'ss" };
C#中的JsonConvert.DeserializeObject是一个方法,用于将JSON字符串反序列化为C#对象。你可以使用这个方法来将一个符合JSON格式的字符串转换为对应的C#对象。 例如,如果有这样一个JSON字符串: "name": "John", "age": 30, "city": "New York" 你可以使用JsonConvert.DeserializeObject方法将其转换为C#对象: ```csharp string json = "{\"name\":\"John\",\"age\":30,\"city\":\"New York\"}"; var obj = JsonConvert.DeserializeObject(json); 这样,obj将被反序列化为一个包含"name"、"age"和"city"属性的动态对象。你也可以指定一个具体的类型来进行反序列化,如下所示: ```csharp class Person public string Name { get; set; } public int Age { get; set; } public string City { get; set; } string json = "{\"name\":\"John\",\"age\":30,\"city\":\"New York\"}"; var person = JsonConvert.DeserializeObject<Person>(json); 现在,person将是一个Person类的实例,它的属性值分别为"name"、"age"和"city"字段在JSON字符串中的对应值。