예제 #1
0
        /// <summary>
        /// 使用微信模板发送固定消息
        /// </summary>
        /// <param name="accessToken"></param>
        /// <param name="openId">接收信息者的微信openId</param>
        /// <param name="templateId">选择模板</param>
        /// <param name="data">
        ///  new
        ///  {
        ///     first = new { color = "#f0f0f1", value = "first" },
        ///     reason = new { color = "#0fe123", value = "reason" },
        ///     refund = new { color = "#c321f0", value = 0.101 },
        ///     Remark = new { color = "#3f333", value = "备注" }
        ///  }
        /// </param>
        /// <param name="url">微信链接地址</param>
        /// <returns>返回参数</returns>
        public static WeiXinResult SendTemplateMessage(string accessToken, string openId, string templateId, object data, string url = "")
        {
            var result = new WeiXinResult();

            try
            {
                Log4Helper.WriteErrLog(String.Format("微信模板发送 WeiXin准备发送:openId:{0},templateId{1},data:{2}", openId, templateId, data.ToJson()), null);
                var template = TemplateApi.SendTemplateMessage(accessToken, openId, templateId, url, data);

                result.ErrCode = template.errcode.ToString();
                result.ErrMsg  = template.errmsg;
            }
            catch (ErrorJsonResultException ex)
            {
                result.IsErr   = true;
                result.ErrCode = ex.JsonResult.errcode.ToString();
                result.ErrMsg  = ex.JsonResult.errmsg;

                Log4Helper.WriteErrLog("微信模板发送 发送异常", ex);
            }
            catch (Exception ex)
            {
                result.IsErr  = true;
                result.ErrMsg = ex.Message;

                Log4Helper.WriteErrLog("微信模板发送 发送异常", ex);
            }

            return(result);
        }
예제 #2
0
        /// <summary>
        /// 接管系统异常,自定义处理程序
        /// </summary>
        /// <param name="exceptionContext">异常内容</param>
        protected override void OnException(ExceptionContext exceptionContext)
        {
            exceptionContext.ExceptionHandled = true;

            var result = new JResult()
            {
                Status = false
            };

            var ex = exceptionContext.Exception;

            //记录日志
            try
            {
                LogApp.Instance.Error(new LogRequest()
                {
                    Source    = LogEnum.Source.前台,
                    Message   = "系统日志",
                    Exception = ex
                });
            }
            catch (Exception e)
            {
                Log4Helper.WriteErrLog("BaseController->OnException日志记录失败", e);
            }
        }
예제 #3
0
 /// <summary>
 /// 全局错误定位
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 protected void Application_Error(object sender, EventArgs e)
 {
     Log4Helper.WriteErrLog("EC.H5 项目启动异常", Server.GetLastError().GetBaseException());
 }