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

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

记得要引入Android 下的

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

在项目中建立一个User 的Class
namespace SampleForWebClient
{
public class User
{
public string id { get; set; }
public string name { get; set; }
public string first_name { get; set; }
public string last_name { get; set; }
public string link { get; set; }
public string username { get; set; }
public string gender { get; set; }
public string locale { get; set; }
}
}
我们回到主程序
using Android.App;
using Android.Widget;
using Android.OS;
using Newtonsoft.Json;
namespace SampleForWebClient
{
[Activity(Label = "Json.net测试", MainLauncher = true, Icon = "@drawable/icon")]
public class Activity1 : Activity
{
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
// Set our view from the "main" layout resource
SetContentView(Resource.Layout.Main);
var btnGetData1 = FindViewById<Button>(Resource.Id.btnGetData1);
btnGetData1.Click += btnGetData1_Click;
}
void btnGetData1_Click(object sender, System.EventArgs e)
{
var webClient = new System.Net.WebClient();
var result = webClient.DownloadString("https://graph.facebook.com/donma.hsu");
//透过JSON.net 反序列化为User对象
var user = JsonConvert.DeserializeObject<User>(result);
//印出 id and name
Toast.MakeText(this, user.id+":"+user.name, ToastLength.Long).Show();
}
}
}
结果:

是不是很简单,在Xamarin 下面开发Android 跟过去的体验是相同的