zoukankan      html  css  js  c++  java
  • asp.net 输出微信自定义菜单json

    不多说了直接上代码

    要引用 using LitJson;

    // 根据Menu列表生成符合微信规范的创建菜单JSon
            //一级菜单不超过3个,二级菜单不超过5个
            //微信唯一标示
            //菜单列表,type为click时url留空,view时key留空
            public string CreateMenuJson()
            {
                DataTable table = new wxMenuModels().getTable();
                DataRow[] dt = table.Select("wx_parent=0");
                JsonData jd = new JsonData();
                jd["button"] = new JsonData();
                foreach(DataRow h in dt)
                {
                    if(Convert.ToInt32(h["IsSub"])==1)//有子菜单
                    {
                        JsonData json = new JsonData();
                        json["name"] = h["wx_name"].ToString();
                        json["sub_button"] = new JsonData();
                        DataRow[] dtt = table.Select("wx_parent="+h["wx_ID"].ToString());
                        foreach(DataRow hh in dtt)
                        {
                            JsonData tempJson = new JsonData();
                            tempJson["type"] = hh["wx_type"].ToString();
                            tempJson["name"] = hh["wx_name"].ToString();
                            if(!string.IsNullOrEmpty(hh["wx_key"].ToString()))
                            {
                                tempJson["key"] = hh["wx_key"].ToString();
                            }
                            else
                            {
                                tempJson["url"] = hh["wx_url"].ToString();
                            }
                            json["sub_button"].Add(tempJson);
                        }
                        jd["button"].Add(json);
                    }
                    else //无子菜单
                    {
                        JsonData tempJson = new JsonData();
                        tempJson["type"] = h["wx_type"].ToString();
                        tempJson["name"] = h["wx_name"].ToString();
                        if (!string.IsNullOrEmpty(h["wx_key"].ToString()))
                        {
                            tempJson["key"] = h["wx_key"].ToString();
                        }
                        else
                        {
                            tempJson["url"] = h["wx_url"].ToString();
                        }
                        jd["button"].Add(tempJson);
                    }
                }
                return jd.ToJson();
            }
  • 相关阅读:
    巡回赛 -- 简单的拓扑排序
    最简单的拓扑排序
    blockhouses
    部分和问题
    jfinal路由简单解析
    python mysql
    Gradle--ubuntu
    解决ssh登录后闲置时间过长而断开连接
    业界有很多MQ产品
    avalon---qunar ued
  • 原文地址:https://www.cnblogs.com/sunheyubo/p/9835788.html
Copyright © 2011-2022 走看看