C# 在Windows Phone 8.1中显示从PHP文件获得的Json数据
我有一个PHP文件,它提供了以下JSON:C# 在Windows Phone 8.1中显示从PHP文件获得的Json数据,c#,php,json,xaml,windows-phone-8.1,C#,Php,Json,Xaml,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, HttpRe
{"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; }
}
我想在TextboxName
中显示Name
值,在TextboxAge
中显示类似的Age
值,在TextboxAddress
中显示Address
值。我不知道怎么做。好的,主要编辑,我基本上删除了我最后的答案,因为它不正确
引用JSON库,最简单的方法是在NuGet上搜索JSON.NET并引用它。然后可以调用服务器并解析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());
}
以下是我在本例中使用的JSON:
{
"name": "John Doe",
"age": 25,
"Address": "Mars"
}
开始阅读。使用System.Web.Script.Serialization;在Windows Phone 8.1中无法识别,您是否添加了对我提到的web扩展的引用?我想我应该使用System.Runtime.Serialization.Json中的DataContactJsonSerializer
;我从来没有为WP8+开发过,所以我不知道是否有组件。我将开发一个快速应用程序,看看您是否可以使用System.Runtime.serialization.Json来完成。然后请帮助我尝试了这个,但是语法错误`var jsonSerializer=new DataContractJsonSerializer(myCars,responseText)`
{
"name": "John Doe",
"age": 25,
"Address": "Mars"
}