我是 Json 新手,必须反序列化从 url 接收到的一些 Json 数据。我正在使用为我提供的 API 将用户登录到应用程序。
API:
在登录
要登录,请拨打以下电话
<site>/Users/login/username:<email>/password:<password>.json
• 成功响应
{
“response”:{
“sessionId” : “<sessionId>”,
“businesses” : [{
“<bizId-1>” : “<bizName-1>”,
“<bizId-2>” : “<bizName-2>” ,
“<bizId-n>” : “<bizName-n>”
}]
},
“messages” :{"msgs":"","errs":""}
}
实际响应的示例如下。
{
"response":{
"sessionId":"50b702d8-78dc-4d65-9de8-2510c327a7be",
"businesses":[
{"50c657af0ad8-4ce7-bb08-1d60c327a7be":"All of The Lights"},
{"50cf705a-ded4-4c7d-95df-51c8c327a7be":"Tomatoes Inc"},
{"50d2cf88-e664-4103-99f9-1aa0c327a7be":"Joe's Jalepinos"},
{"50d2d9b9-c358-4129-b9ec-1aa0c327a7be":"Pizza Place"},
{"50eed93e-f49c-4dff-8c7a-33f0c327a7be":"Samsung"},
{"51036f10-e9c0-47ecb73d-0f50c327a7be":"Peppers"},
{"51036fcd-a6b8-4103-8e160f82c327a7be":"Puppy"}
]
},
"messages":{"msgs":"","errs":""}
}
我有以下代码:
try
{
serverUrl = "https://eko-app.com/Users/login/username:" + usernameEntered + "/password:" + passwordEntered + ".json";
var w = new WebClient();
var jsonData = string.Empty;
// make the login api call
jsonData = w.DownloadString(serverUrl);
if (!string.IsNullOrEmpty(jsonData))
{
var dataResult = Newtonsoft.Json.JsonConvert.DeserializeObject(jsonData);
// need help here
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
我首先想从响应中检索会话 ID。如果存在,则允许用户登录,如果会话 id 为空,则拒绝登录。我该怎么做呢?
此外,一旦用户登录,我想创建一个列表,显示每个用户的企业数量及其各自的企业 ID。
任何帮助表示赞赏。