C# 如何在C中解析来自RESTful API的JSON响应#

C# 如何在C中解析来自RESTful API的JSON响应#,c#,.net,json,C#,.net,Json,我调用了一个web服务,无法接收下一个JSON对象。如何从JSON中获取用户字段 curl -X POST -H "Authorization: Bearer <Bearer>" -H "Content-Type: application/json" -d '{ "user": { "name": "John", "last_name" : "Harrys", "user_na

我调用了一个web服务,无法接收下一个JSON对象。如何从JSON中获取用户字段

    curl -X POST -H "Authorization: Bearer <Bearer>" -H "Content-Type: application/json"
    -d '{
    "user": {
              "name": "John",
              "last_name" : "Harrys",
              "user_name" : "JHarrys",
              "email": "JHarrys@noreply.com",
              "password" : "JHarrys1005",
            },
    "user": {
              "name": "Mike",
              "last_name" : "Hanlon",
              "user_name" : "MHanlon",
              "email": "MHanlon@noreply.com",
              "password" : "5",
            }
    }'
    "https://<api host and port>/<service>/createUsers"


    [OperationContract]
    [WebInvoke(UriTemplate = "createUsers", Method = "POST", ResponseFormat = WebMessageFormat.Json)]
    public String createUsers(User user)
    {
    //code
    }

[DataContract]
    public class User 
    {
        [DataMember]
        public string name;
        [DataMember]
        public string last_name;
        [DataMember]
        public string user_name;
        [DataMember]
        public string email;
        [DataMember]
        public string password;
    }
curl-X POST-H“授权:承载者”-H“内容类型:应用程序/json”
-d'{
“用户”:{
“姓名”:“约翰”,
“姓”:“哈利斯”,
“用户名”:“JHarrys”,
“电子邮件”:JHarrys@noreply.com",
“密码”:“JHarrys1005”,
},
“用户”:{
“姓名”:“迈克”,
“姓氏”:“Hanlon”,
“用户名”:“MHanlon”,
“电子邮件”:MHanlon@noreply.com",
“密码”:“5”,
}
}'
"https:////createUsers"
[经营合同]
[WebInvoke(UriTemplate=“createUsers”,Method=“POST”,ResponseFormat=WebMessageFormat.Json)]
公共字符串createUsers(用户)
{
//代码
}
[数据合同]
公共类用户
{
[数据成员]
公共字符串名称;
[数据成员]
公共字符串姓氏;
[数据成员]
公共字符串用户名;
[数据成员]
公共字符串电子邮件;
[数据成员]
公共字符串密码;
}

解析json数据的最简单方法之一是使用Newtonsoft的json库。 您将创建一个类,该类将保存要分析的数据

    curl -X POST -H "Authorization: Bearer <Bearer>" -H "Content-Type: application/json"
    -d '{
    "user": {
              "name": "John",
              "last_name" : "Harrys",
              "user_name" : "JHarrys",
              "email": "JHarrys@noreply.com",
              "password" : "JHarrys1005",
            },
    "user": {
              "name": "Mike",
              "last_name" : "Hanlon",
              "user_name" : "MHanlon",
              "email": "MHanlon@noreply.com",
              "password" : "5",
            }
    }'
    "https://<api host and port>/<service>/createUsers"


    [OperationContract]
    [WebInvoke(UriTemplate = "createUsers", Method = "POST", ResponseFormat = WebMessageFormat.Json)]
    public String createUsers(User user)
    {
    //code
    }

[DataContract]
    public class User 
    {
        [DataMember]
        public string name;
        [DataMember]
        public string last_name;
        [DataMember]
        public string user_name;
        [DataMember]
        public string email;
        [DataMember]
        public string password;
    }
public class Movie {
public string Name {get;set;}
public string ReleaseDate {get;set}
...
}
然后获取json字符串,并使用JsonConvert对其进行反序列化

    curl -X POST -H "Authorization: Bearer <Bearer>" -H "Content-Type: application/json"
    -d '{
    "user": {
              "name": "John",
              "last_name" : "Harrys",
              "user_name" : "JHarrys",
              "email": "JHarrys@noreply.com",
              "password" : "JHarrys1005",
            },
    "user": {
              "name": "Mike",
              "last_name" : "Hanlon",
              "user_name" : "MHanlon",
              "email": "MHanlon@noreply.com",
              "password" : "5",
            }
    }'
    "https://<api host and port>/<service>/createUsers"


    [OperationContract]
    [WebInvoke(UriTemplate = "createUsers", Method = "POST", ResponseFormat = WebMessageFormat.Json)]
    public String createUsers(User user)
    {
    //code
    }

[DataContract]
    public class User 
    {
        [DataMember]
        public string name;
        [DataMember]
        public string last_name;
        [DataMember]
        public string user_name;
        [DataMember]
        public string email;
        [DataMember]
        public string password;
    }
string json = @"{
  'Name': 'Bad Boys',
  'ReleaseDate': '1995-4-7T00:00:00',
  'Genres': [
    'Action',
    'Comedy'
  ]
}";

Movie m = JsonConvert.DeserializeObject<Movie>(json);

string name = m.Name;
// Bad Boys
stringjson=@”{
“名字”:“坏男孩”,
“发布日期”:“1995-4-7T00:00:00”,
“流派”:[
“行动”,
“喜剧”
]
}";
Movie m=JsonConvert.DeserializeObject(json);
字符串名称=m.名称;
//坏小子

可能重复我尝试过,但不适合我