•  
    • https://www.cnblogs.com/zjoch/p/4458516.html

    •  

      再来我们要怎么解析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 SampleForWebClient
      02.{
      03.public class User
      04.{
      05.public string id { getset; }
      06.public string name { getset; }
      07.public string first_name { getset; }
      08.public string last_name { getset; }
      09.public string link { getset; }
      10.public string username { getset; }
      11.public string gender { getset; }
      12.public string locale { getset; }
      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 SampleForWebClient
      07.{
      08.[Activity(Label = "Json.net测试", MainLauncher = true, Icon = "@drawable/icon")]
      09.public class Activity1 : Activity
      10.{
      11.protected override void OnCreate(Bundle bundle)
      12.{
      13.base.OnCreate(bundle);
      14. 
      15.// Set our view from the "main" layout resource
      16.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 name
      30.Toast.MakeText(this, user.id+":"+user.name, ToastLength.Long).Show();
      31.}
      32. 
      33. 
      34.}
      35.}

      结果:

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

Xamarin调用JSON.net来解析JSON的更多相关文章

  1. Xamarin 调用JSON.net来解析JSON 转(Model) json2csharp.com/

    https://www.cnblogs.com/zjoch/p/4458516.html   再来我们要怎么解析JSON格示呢?在.net 中,我们很孰悉的JSON.net,没错,我们依然可以在Xam ...

  2. Xamarin.Android下获取与解析JSON

    一.新建项目 1.新建一个Android项目,并命名为为NetJsonList 2.右击引用,选择添加引用,引用System.Json.dll 二.同步请求 既然是跨平台,我们自然不能按照java下的 ...

  3. [Xamarin] 調用JSON.net 來解析JSON (转帖)

    上一篇文章我們提到了透過WebClient從Facebook 拿到我的JSON資料 再來我們要怎麼解析JSON格示呢?在.net 中,我們很孰悉的JSON.net,沒錯,我們依然可以在Xamarin中 ...

  4. 《项目经验》--后台一般处理程序向前台JS文件传递JSON,JS解析JSON,将数据显示在界面--显示在DropDownList 或 显示在动态创建的table中

    http://blog.csdn.net/mazhaojuan/article/details/8599167 先看一下我要实现的功能界面: 这篇文章主要介绍:后台一般处理程序把从数据库查找的数据,转 ...

  5. 使用Newtonsoft.Json.dll(JSON.NET)动态解析JSON、.net 的json的序列化与反序列化(一)

    在开发中,我非常喜欢动态语言和匿名对象带来的方便,JSON.NET具有动态序列化和反序列化任意JSON内容的能力,不必将它映射到具体的强类型对象,它可以处理不确定的类型(集合.字典.动态对象和匿名对象 ...

  6. 大话JSON之Gson解析JSON

    (三)解析Json数组(多条Json数据) 比如有如下Json数据: [{'name':'John', 'grade':[{'course':'English','score':100},{'cour ...

  7. php生成json和js解析json

    php生成json $value=array("name"=>"dfas");echo json_encode($value); js解析json var ...

  8. Json介绍以及解析Json

    首先,介绍一下Json字串,以下Json的介绍引用网上资料. 简单地说,JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应 ...

  9. Java中使用org.json和json-lib解析JSON

    文章目录  [隐藏] 一.JavaProject中org.json解析JSON 1.JSON的org.son-api下载 1)JSON网址 2)JSON的java解析org.json-api网址 3) ...

随机推荐

  1. HDU4046--Panda(树状数组)

    Panda Time Limit: 10000/4000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Sub ...

  2. PHP 八种基本的数据类型小结

    四种标量类型: boolean (布尔型) integer (整型) float (浮点型, 也称作 double) string (字符串) 两种复合类型: array (数组) object (对 ...

  3. yii2.0中Rbac 怎么添加超加管理员

    最笨的是定义常量.具体怎么做?看下面: //定义在控制器声明上面define('BEST_PHPER',serialize(array('admin','admin1')));//设置admin管理员 ...

  4. 怎么让普通用户使用root权限执行用户命令

    1.添加用户,首先用adduser命令添加一个普通用户,命令如下: #adduser tommy //添加一个名为tommy的用户#passwd tommy //修改密码Changing passwo ...

  5. 关于pipelineDB调用GetLocalStreamReaders的BUG

    如果想获取一个stream所有的reader,那么必须调用这个函数: Bitmapset *targets = GetLocalStreamReaders(relid); 如果stream下面没有re ...

  6. PHP获取一周的日期

    /** * 获取一周日期 * @param $time 时间戳 * @param $format 转换格式 */ function get_week($time, $format = "Y- ...

  7. svn服务器的搭建与使用二

    转载出处 上一篇介绍了VisualSVN Server和TortoiseSVN的下载,安装,汉化.这篇介绍一下如何使用VisualSVN Server建立版本库,以及TortoiseSVN的使用. 首 ...

  8. 基于 Vue.js 的移动端组件库mint-ui实现无限滚动加载更多

    通过多次爬坑,发现了这些监听滚动来加载更多的组件的共同点, 因为这些加载更多的方法是绑定在需要加载更多的内容的元素上的, 所以是进入页面则直接触发一次,当监听到滚动事件之后,继续加载更多, 所以对于无 ...

  9. 【ODPS】TableTunnel单线程简单下载事例

    ODPS Tunnel是ODPS的数据通道,用户能够通过Tunnel向ODPS中上传或者下载数据.眼下Tunnel仅支持表(不包含视图View)数据的上传下载. 主要接口 描写叙述 TableTunn ...

  10. cocos2dx中关于Action动作的相关API的具体介绍

     //CCMoveBy  创建一个移动的动作 //參数1:移动到目标坐标所需的时间 //參数2:目标坐标 //支持reverse 能够获取其反向动作 //CCMoveTo  一样的 //CCAct ...