C#微信json结构接收参数

发素材的时间要上传资源故此要用json格式数据,需要转化。

微信服务器交互基本上都是json格式的文件,尤其是高级接口中的图片上传,故此转化json格式的字符串非常重要


把这样的json格式的字符串转化为结构获取具体的某一属性值

{

"total":196,
"count":196,
"data":{
    "openid":[
        "o3Jevs5Db6rTj2G9J4_-jLzddmIc",
        "o3Jevs_cVjKrRAlIwIFRqCmasRP4",
        "o3Jevs9eM9ela-ykJC8lCkLaGhd8",
        "o3Jevs6Nc9rf4KnGIfMSbb528HR8",
        "o3JevsyDHt_c1S0FGbIwMh41-qz4",
    ]
      },
"next_openid":"o3JevszVYwKeUzsGIMrdzdeWJOAc"

}

结构如下:

  public struct GetOpenids
    {
        public int total { get; set; }
        public int count { get; set; }
        public getopenid data{get;set;}
        public string next_openid { get; set; }

    }

    public struct getopenid
    {
        public string[] openid { get; set; }
    }

用结构接收参数 就可以获取具体某一json里面的值

           JavaScriptSerializer js = new JavaScriptSerializer();   //实例化一个能够序列化数据的类
            GetOpenids jsonmy = js.Deserialize<GetOpenids>(returnStr);    //将json数据转化为对象类型并赋值给list
            int count = jsonmy.count;  

这里获取值最好要用泛型

public class JsonClass<T>
    {
        public T GetJson(string json)
        {
            JavaScriptSerializer js = new JavaScriptSerializer();   //实例化一个能够序列化数据的类
            T t = js.Deserialize<T>(json);    //将json数据转化为对象类型并赋值给list
            return t;
        }    
    }

这样可以重用代码用结构GetOpenids 用其他的只需改变<>里面的结构

 JsonClass<GetOpenids> json = new JsonClass<GetOpenids>();




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值