基于接口的对象实例,泛型
来源:互联网 发布:苹果手机录屏软件 编辑:程序博客网 时间:2024/06/08 15:22
public CommonResult DeleteDept(string accessToken, int Id) { string urlFormat = "https://qyapi.weixin.qq.com/cgi-bin/department/delete?access_token={0}&id={1}"; var data = new { id = Id }; var url = string.Format(urlFormat, accessToken, Id); var postData = data.ToJSON(); CommonResult result = CorpJsonHelper<CommonResult>.ConvertJson(url, postData); return result; }
public static class JSONExtension { public static string ToJSON(this object obj) { System.Text.StringBuilder sb = new System.Text.StringBuilder(); System.Web.Script.Serialization.JavaScriptSerializer json = new System.Web.Script.Serialization.JavaScriptSerializer(); json.Serialize(obj, sb); return sb.ToString(); } public static T ParseJSON<T>(this string str) { System.Web.Script.Serialization.JavaScriptSerializer json = new System.Web.Script.Serialization.JavaScriptSerializer(); return json.Deserialize<T>(str); } }
public class CorpJsonHelper<T> { public static T ConvertJson(string url, object postData) { HttpHelper helper = new HttpHelper(); var result = helper.GetHtml(url); return result.ParseJSON<T>(); } public static T ConvertJson(string url, object postData,string method) { HttpHelper helper = new HttpHelper(); var result = helper.GetHtml(url, postData.ToString(),method); return result.ParseJSON<T>(); } }
public class CorpAddressBookApi : ICorpAddressBookApi { /// <summary> /// 创建部门。 /// 管理员须拥有“操作通讯录”的接口权限,以及父部门的管理权限。 /// </summary> public CorpDeptCreateJson CreateDept(string accessToken, string name, string parentId) { string urlFormat = "https://qyapi.weixin.qq.com/cgi-bin/department/create?access_token={0}"; var data = new { name = name, parentid = parentId, order = 1, //id = 100, }; var url = string.Format(urlFormat, accessToken); var postData = data.ToJSON(); CorpDeptCreateJson result = CorpJsonHelper<CorpDeptCreateJson>.ConvertJson(url, postData,"POST"); return result; } public CommonResult DeleteDept(string accessToken, int Id) { string urlFormat = "https://qyapi.weixin.qq.com/cgi-bin/department/delete?access_token={0}&id={1}"; var data = new { id = Id }; var url = string.Format(urlFormat, accessToken, Id); var postData = data.ToJSON(); CommonResult result = CorpJsonHelper<CommonResult>.ConvertJson(url, postData); return result; } public CorpDeptListJson ListDept(string accessToken) { string _id = "0"; string urlFormat = "https://qyapi.weixin.qq.com/cgi-bin/department/list?access_token={0}&id={1}"; var data = new { id = _id, }; var postData = data.ToJSON(); var url = string.Format(urlFormat, accessToken, _id); CorpDeptListJson result = CorpJsonHelper<CorpDeptListJson>.ConvertJson(url, postData); return result; } public CommonResult UpdateDept(string accessToken, int Id, string newName) { string urlFormat = "https://qyapi.weixin.qq.com/cgi-bin/department/update?access_token={0}"; var data = new { name = newName, //parentid = parentId, order = 1, id = Id, }; var url = string.Format(urlFormat, accessToken); var postData = data.ToJSON(); CommonResult result = CorpJsonHelper<CommonResult>.ConvertJson(url, postData, "POST"); return result; } }
ICorpAddressBookApi bll = new CorpAddressBookApi();
0 0
- 基于接口的对象实例,泛型
- 基于结构;基于对象;面向对象;基于接口四种C++编程思想的实例分析
- 接口对象的实例化
- PHP面向对象之接口的实例
- 对象实例化---Parcelable接口的使用
- COM 接口得到实现该接口的对象实例
- 基于事件驱动的解析接口 SAX (实例一)
- 基于事件驱动的解析接口 SAX (实例二)
- 基于事件驱动的解析接口 SAX (实例三)
- 基于MEX文件的Matlab与C语言接口实例
- 基于MEX文件的Matlab与C语言接口实例
- 基于JAVA的黄金数据接口调用代码实例
- 基于php的基金财务数据接口调用代码实例
- 基于php的地图坐标服务接口调用代码实例
- 基于php的银行卡实名认证接口调用代码实例
- 基于php的身份证实名认证接口调用代码实例
- 一个基于Behave框架的http接口测试实例
- 一个基于Behave框架的http接口测试实例
- 剑指-二进制相加进位
- MVP与MVC
- c#解析EXCEL文件实例复习
- CCF-201403-2-窗口
- Android Studio提交库至Bintray jCenter从入门到放弃
- 基于接口的对象实例,泛型
- 与adb相关的问题,比如掉线问题、Android Studio 提示Session 'app':Error Installing APK、找不到设备
- Kaldi学习笔记 -- 构建字典FST脚本 -- prepare_lang.sh 关键内容解析
- UITextField长度限制的写法
- Http中get和post的区别
- 图书馆管理系统的出路,下一代图书馆管理系统发展方向
- 匿名方法,委托,特性和事件实例复习
- 标准C++_02_面向对象
- android 开发之坑系列_实体序列化问题