// GET: CustomMenu public ActionResult Create() { var json = System.IO.File.ReadAllText(Server.MapPath("/Content/Json/WeiXinMenu.json")); bool _result = CustomMenuAPI.Create(WeixinConfig.AccessToken, json); if (!_result) { return(Content("menu创建错误!")); } return(Content(json)); }
/// <summary> /// 读取菜单文件发布到公众号 /// </summary> /// <returns></returns> public ContentResult CreateMenu() { if (!System.IO.File.Exists(MenuFilePath)) { return new ContentResult() { Content = "菜单文件不存在,请先创建菜单" } } ; var button = FileHelper.ShareRead(MenuFilePath, Encoding.Default); var token = WeixinHelper.TokenHelper.GetToken(false); CustomMenuAPI.Create(token, button); return(new ContentResult() { Content = "创建菜单成功" }); } }
//发布 public ActionResult CreateMenu() { var menuList = _task.GetList(); var menuModel = new MenuModel() { button = new List <object>() }; foreach (var itemP in menuList.Where(c => c.menuid <= 3)) { var childList = menuList.Where(c => c.menuid >= itemP.menuid * 10 && c.menuid < itemP.menuid * 10 + 10).ToList().OrderByDescending(c => c.menuid); if (childList.Count() > 0) { var menuChildModel = new MenuChildModel() { name = itemP.name, sub_button = new List <object>() }; foreach (var itemC in childList) { #region 代码 switch (itemC.type) { case "click": case "location_select": var clickModel = new clickModel() { type = itemC.type, key = itemC.key, name = itemC.name }; menuChildModel.sub_button.Add(clickModel); break; case "view": var viewModel = new viewModel() { type = itemC.type, url = itemC.url, name = itemC.name }; menuChildModel.sub_button.Add(viewModel); break; case "miniprogram": var miniprogramModel = new miniprogramModel() { type = itemC.type, url = itemC.url, appid = itemC.appid, pagepath = itemC.pagepath, name = itemC.name }; menuChildModel.sub_button.Add(miniprogramModel); break; case "scancode_waitmsg": case "scancode_push": case "pic_sysphoto": case "pic_photo_or_album": case "pic_weixin": var subbuttonModel = new subbuttonModel() { type = itemC.type, key = itemC.key, name = itemC.name, sub_button = new List <object>(), }; menuChildModel.sub_button.Add(subbuttonModel); break; case "media_id": case "view_limited": var mediaidModel = new mediaidModel() { type = itemC.type, media_id = itemC.media_id, name = itemC.name, }; menuChildModel.sub_button.Add(mediaidModel); break; } #endregion } menuModel.button.Add(menuChildModel); } else { #region 代码 switch (itemP.type) { case "click": case "location_select": var clickModel = new clickModel() { type = itemP.type, key = itemP.key, name = itemP.name }; menuModel.button.Add(clickModel); break; case "view": var viewModel = new viewModel() { type = itemP.type, url = itemP.url, name = itemP.name }; menuModel.button.Add(viewModel); break; case "miniprogram": var miniprogramModel = new miniprogramModel() { type = itemP.type, url = itemP.url, appid = itemP.appid, pagepath = itemP.pagepath, name = itemP.name }; menuModel.button.Add(miniprogramModel); break; case "scancode_waitmsg": case "scancode_push": case "pic_sysphoto": case "pic_photo_or_album": case "pic_weixin": var subbuttonModel = new subbuttonModel() { type = itemP.type, key = itemP.key, name = itemP.name, sub_button = new List <object>(), }; menuModel.button.Add(subbuttonModel); break; case "media_id": case "view_limited": var mediaidModel = new mediaidModel() { type = itemP.type, media_id = itemP.media_id, name = itemP.name, }; menuModel.button.Add(mediaidModel); break; } #endregion } } var sdk = new WeiXinSdkTask("", ""); var result = CustomMenuAPI.Create(sdk.AccountToken(), JsonConvert.SerializeObject(menuModel)); if (result) { return(Json(new RequestResultDto() { Msg = "发布成功", Ret = 0 })); } return(Json(new RequestResultDto() { Msg = "发布失败", Ret = -1 })); }