как получить значение из json ответа в xamarin android? (цель входа пользователя в приложение android) - PullRequest
0 голосов
/ 13 февраля 2020

c# код: -

var handler = new HttpClientHandler();

  HttpClient client = new HttpClient(handler);

  string result = await client.GetStringAsync(url);

 Console.WriteLine(result);

json respose (результат): -

{
    "accountstab": [
        {
            "LoginType": "r",
            "RepId": 3368,
            "RepName": "Aachi's M",
            "RepUName": "aachis",
            "RepPwd": "aachis123",
            "WhlId": null,
            "RepLocalId": null,
            "WhoName": "Aachi's M",
            "WhoTin": "32661034",
            "WhoEmail": "hanee@gmail.com"
        },
        {
            "LoginType": "r",
            "RepId": 3335,
            "RepName": "AL-NAJA M",
            "RepUName": "alnaja",
            "RepPwd": "chemmad",
            "WhlId": null,
            "RepLocalId": null,
            "WhoName": "AL-NAJA",
            "WhoTin": "7222075",
            "WhoEmail": "abbas@gmail.com"
        }
    ]
}

класс модели:

public class RootObject

    {
        public List<Accountstab> accountstab { get; set; }
    }
    public class Accountstab
    {
        public string LoginType { get; set; }
        public int RepId { get; set; }
        public string RepName { get; set; }
        public string RepUName { get; set; }
        public string RepPwd { get; set; }
        public int? WhlId { get; set; }
        public int? RepLocalId { get; set; }
        public string WhoName { get; set; }
        public string WhoTin { get; set; }
        public string WhoEmail { get; set; }
    }

Ответы [ 2 ]

2 голосов
/ 13 февраля 2020

Я могу сделать с Newtonsoft.Json dll от NuGet:

using Newtonsoft.Json;
// ... 
RootObject json = JsonConvert.DeserializeObject<RootObject>(result);

Пример использования:

foreach (var item in json.accountstab)
     Console.WriteLine(item.RepUName);

Выход:

aachis
alnaja
0 голосов
/ 14 февраля 2020

, если есть какие-либо проблемы со строкой value = "null" в json, publi c string WhoTin {get; набор; } это поле пустое - некоторые записи

Ошибка вашей строки json вызвана не нулем, а ' в json ниже.

"RepName": "Aachi's M", 
"WhoName": "Aachi's M",

То, как вы использовали для удаления данных json в Xamarin.forms, является правильным.

var jsondata = JsonConvert.DeserializeObject<Rootobject>(json);

При изменении данных ' в json все будет в порядке.

"RepName": "Aachi s M" 
"WhoName": "Aachi s M",

enter image description here

...