c # — Показать данные Json, полученные из файла PHP в Windows Phone 8.1

У меня есть файл PHP, который дает мне следующий JSON:

{"Name":"Waqas","Age":37,"Address":"Kanju"}

Когда я выполняю этот метод в Windows Phone, он дает мне тот же JSON:

{"Name":"Waqas","Age":37,"Address":"Kanju"}

в текстовом блоке имени tblock.Text;

Это мой метод получения данных из файла PHP в формате JSON:

public async void sndandrec(string feedingaddress, HttpResponseMessage   response, TextBlock tblock, HttpClient myhttpClient)
string responseText;
tblock.Text = "Waiting for response ...";
try
{
response = await myhttpClient.GetAsync(resourceUri);
response.EnsureSuccessStatusCode();
responseText = await response.Content.ReadAsStringAsync();
}
catch (Exception ex)
{
// Need to convert int HResult to hex string
tblock.Text = "Error = " + ex.HResult.ToString("X") +
"  Message: " + ex.Message;
responseText = "";
}
tblock.Text = response.StatusCode + " " + response.ReasonPhrase;

tblock.Text = responseText.ToString();

Это мой класс:

public class RootObject
{
public string Name { get; set; }
public int Age { get; set; }
public int Address { get; set; }
}

Я хотел бы показать Name значение в TextboxName, похоже Age значение в TextboxAge а также Address значение в TextboxAddress, Я не знаю, как это сделать.

0

Решение

Хорошо, главное редактирование, и я в основном удалил весь свой последний ответ из-за его неправильности.

Обратитесь к библиотеке JSON, проще всего найти JSON.NET в NuGet и сослаться на это. Затем вы можете позвонить на ваш сервер и проанализировать данные JSON.

WebRequest request = WebRequest.Create("http://addresstojson.com/json.json");
WebResponse response = await request.GetResponseAsync();

using(var stream = new StreamReader(response.GetResponseStream()))
{
json = JsonConvert.DeserializeObject<RootObject>(stream.ReadToEnd());
}

Тогда вы все еще можете установить текстовые блоки с данными, полученными с использованием класса RootObject, который вы определили в своем вопросе.

tbName.Text = "Name: " + json.Name;
tbAge.Text = "Age: " + json.Age;
tbAddress.Text = "Address: " + json.Address;

Вот JSON, который я использовал для этого примера:

{
"name": "John Doe",
"age": 25,
"Address": "Mars"}
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]