不多说了直接上代码
要引用 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(); }