Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/269.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语言中反序列化JSON对象#_C#_Json_Web Services_Deserialization - Fatal编程技术网

C# 在C语言中反序列化JSON对象#

C# 在C语言中反序列化JSON对象#,c#,json,web-services,deserialization,C#,Json,Web Services,Deserialization,我正在使用Web服务并按以下方式反序列化对象: var content = JsonConvert.DeserializeObject<Member>(result); 以下是要反序列化的类: public class Member { public List<Create> Create { get; set; } public string DATE { get; set; } } public class Create { public

我正在使用Web服务并按以下方式反序列化对象:

var content = JsonConvert.DeserializeObject<Member>(result);
以下是要反序列化的类:

public class Member
{
    public List<Create> Create { get; set; }
    public string DATE { get; set; }
}

public class Create
{
    public bool isValidMemberPassword { get; set; }
    public int member_eid { get; set; }
}
公共类成员
{
公共列表创建{get;set;}
公共字符串日期{get;set;}
}
公共类创建
{
public bool isValidMemberPassword{get;set;}
公共int成员{get;set;}
}

问题是我的
Create
对象没有使用收到的值创建。所有值均为
null
。正在正确创建
成员
对象。我是C#的noob。

请使用下面提到的课程

public class CREATE
{
    public bool isValidMemberPassword { get; set; }
    public int member_eid { get; set; }
}

public class RootObject
{
    public List<CREATE> CREATE { get; set; }
    public string DATE { get; set; }
}
创建公共类
{
public bool isValidMemberPassword{get;set;}
公共int成员{get;set;}
}
公共类根对象
{
公共列表创建{get;set;}
公共字符串日期{get;set;}
}

首先,对于JSON转换,您的属性必须与JSON代码的属性相等。如果您在转换时遇到困难,可以使用

我发现JSON代码的属性没有采用正确的格式规则(在camelcase中为属性名称)。要纠正这一点,可以使用属性
JsonProperty
和第一个参数JSON属性名。见下面的代码:

公共类成员
{
[JsonProperty(“已创建”)]
已创建公共列表{get;set;}
[JsonProperty(“日期”)]
公共字符串日期{get;set;}
}
公共类创建
{
[JsonProperty(“isValidMemberPassword”)]
public bool IsValidMemberPassword{get;set;}
[JsonProperty(“成员”)
public int MemberEid{get;set;}
}

strange,用于使用public
List CREATE{get;set;}
代替
public List CREATE{get;set;}
。你能告诉我它是否有效吗?@H.Pauwelyn worked;)一般来说,使用类生成器也是一个不错的主意,就像Works for me一样,请参见
public class CREATE
{
    public bool isValidMemberPassword { get; set; }
    public int member_eid { get; set; }
}

public class RootObject
{
    public List<CREATE> CREATE { get; set; }
    public string DATE { get; set; }
}