博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在winform里建立http链接和反序列化解析数据
阅读量:5025 次
发布时间:2019-06-12

本文共 2224 字,大约阅读时间需要 7 分钟。

在winform中,如果要获取别人的开放的api或者是访问外部网路数据,都需要建立http链接,然后通过post/get方法来获取数据,然后反序列化,将获取的数据赋值到已建立好的model里来,从而在窗口来展示;

 

     ///         /// 建立http链接方法        ///         /// 通过输入框或者是默认的链接地址        public string SetHttpLink(string apiUrl )        {            HttpWebRequest request;            request = (HttpWebRequest)WebRequest.Create(apiUrl);            HttpWebResponse response;            response = (HttpWebResponse)request.GetResponse();  //get方法            System.IO.StreamReader reader = new StreamReader(response.GetResponseStream(),Encoding.UTF8);            string reponseTxt = reader.ReadToEnd();            reader.Close();            return reponseTxt;        }

反序列化:反序列化有三种方法,引用的介绍

///         /// 按照歌名搜索按钮事件        ///         ///         ///         private void toolStripButton7_Click(object sender, EventArgs e)        {                                         string ReacherMusicListHttp;                    string textboxurl;            textboxurl = toolStripButton6.Text;            if (string.IsNullOrEmpty(textboxurl))            {                MessageBox.Show("请输入歌曲名字!");            }            else            {                string pinjiezifu = string.Format("?format=json&method=baidu.ting.search.catalogSug&query={0}", textboxurl);                ReacherMusicListHttp = string.Format("http://tingapi.ting.baidu.com/v1/restserver/ting" + pinjiezifu);                string result= SetHttpLink(ReacherMusicListHttp);                SelectSongListModel descJsonStu = JsonConvert.DeserializeObject
(result);//反序列化 //string messate = string.Format("反序列化: ID={0},Name={1}", descJsonStu.song, descJsonStu.order); List
list = descJsonStu.song.ToList(); //这里还需要加个空值判断 foreach (var onesong in list) { listBox1.Items.Add(onesong.songName + " _ " + onesong.artistname) ; selectsongNamelist.Add(onesong.songName+" _ "+onesong.artistname); selectsongIdlist.Add(onesong.songid); } } }

  

 

转载于:https://www.cnblogs.com/xiaojia-net/p/7941609.html

你可能感兴趣的文章
Flutter 贝塞尔曲线切割
查看>>
golang 的编译安装以及supervisord部署
查看>>
easyui源码翻译1.32--Dialog(对话框窗口)
查看>>
阿里架构师,讲述基于微服务的软件架构模式
查看>>
Eclipse导入maven项目时,Pom.xml文件报错处理方法
查看>>
01、JAVA开发准备
查看>>
asp.net mvc 错误处理 - 自定义报错处理,生成错误日志
查看>>
Linux centos ssh
查看>>
R语言之避免for循环示例
查看>>
[转]jQuery 选择器和dom操作
查看>>
Jenkins+Maven+SVN快速搭建持续集成环境(转)
查看>>
bootstrap 媒体查询
查看>>
杜教筛
查看>>
《Ext JS模板与组件基本知识框架图----模板》
查看>>
txmpp
查看>>
微信开发时调用jssdk,在安卓设备中成功调用;在ios设备中返回错误消息:config fail,无其他具体错误消息,且接口权限显示获取ok,无法调用...
查看>>
【Github教程】史上最全github使用方法:github入门到精通
查看>>
抽象工厂模式(Abstract Factory)
查看>>
luogu1373 小a和uim之大逃离 (dp)
查看>>
Redis的Pub/Sub客户端实现
查看>>