标签:

再来我们要怎么解析JSON格示呢?在.net 中,我们很孰悉的JSON.net,没错,我们依然可以在Xamarin中使用他
感谢社群伟大的贡献 下载网址: http://components.xamarin.com/view/json.net/

接续上一个项目我们多引入下载后的 Newtonsoft.Json.dll

记得要引入Android 下的

引入后就跟我们平常使用JSON.net 一样首先我们要为Facebook接回来的数据建立一个相对应的Class
这时候我们可以使用 http://json2csharp.com/ 这网站帮忙

在项目中建立一个User 的Class
01.namespace SampleForWebClient02.{03.public class User04.{05.public string id { get; set; }06.public string name { get; set; }07.public string first_name { get; set; }08.public string last_name { get; set; }09.public string link { get; set; }10.public string username { get; set; }11.public string gender { get; set; }12.public string locale { get; set; }13.}14.}我们回到主程序
01.using <a href="http://www.it165.net/pro/ydad/" target="_blank" class="keylink">Android</a>.App;02.using Android.Widget;03.using Android.OS;04.using Newtonsoft.Json;05. 06.namespace SampleForWebClient07.{08.[Activity(Label = "Json.net测试", MainLauncher = true, Icon = "@drawable/icon")]09.public class Activity1 : Activity10.{11.protected override void OnCreate(Bundle bundle)12.{13.base.OnCreate(bundle);14. 15.// Set our view from the "main" layout resource16.SetContentView(Resource.Layout.Main);17. 18.var btnGetData1 = FindViewById<Button>(Resource.Id.btnGetData1);19. 20.btnGetData1.Click += btnGetData1_Click;21.}22. 23.void btnGetData1_Click(object sender, System.EventArgs e)24.{25.var webClient = new System.Net.WebClient();26.var result = webClient.DownloadString("https://graph.facebook.com/donma.hsu");27.//透过JSON.net 反序列化为User对象28.var user = JsonConvert.DeserializeObject<User>(result);29.//印出 id and name30.Toast.MakeText(this, user.id+":"+user.name, ToastLength.Long).Show();31.}32. 33. 34.}35.}结果:

是不是很简单,在Xamarin 下面开发Android 跟过去的体验是相同的
标签:
原文地址:http://www.cnblogs.com/zjoch/p/4458516.html