Beispiel #1
0
        public override void OnException(ExceptionContext filterContext)
        {
            HS_ErrRec ex = new HS_ErrRec();

            try
            {
                ContentResult contentResult = new ContentResult();
                contentResult.Content          = JsonStringResult.Error(OperateResCodeEnum.内部错误);
                filterContext.Result           = contentResult;
                filterContext.ExceptionHandled = true;

                ex.Action     = (filterContext.RouteData.Values["action"]).ToString();
                ex.AddTime    = DateTime.Now;
                ex.Controller = (filterContext.RouteData.Values["controller"]).ToString();
                ex.ErrorMsg   = filterContext.Exception.Message;
                ex.IP         = StringUtil.GetIP();
                ex.StackTrace = filterContext.Exception.StackTrace;
                ex.Arguments  = "";
                ex.DataSource = (int)DataSourceEnum.Web;
                ErrRecBll.Instance.AsyncInsert(ex);
            }
            catch (Exception ep)
            {
            }
        }
        public override void OnException(ExceptionContext filterContext)
        {
            HS_ErrRec ex = new HS_ErrRec();

            try
            {
                ContentResult contentResult = new ContentResult();
                contentResult.Content          = JsonStringResult.Error(OperateResCodeEnum.内部错误);
                filterContext.Result           = contentResult;
                filterContext.ExceptionHandled = true;

                ex.Action     = (filterContext.RouteData.Values["action"]).ToString();
                ex.AddTime    = DateTime.Now;
                ex.Controller = (filterContext.RouteData.Values["controller"]).ToString();
                ex.ErrorMsg   = filterContext.Exception.Message;
                ex.IP         = StringUtil.GetIP();
                ex.StackTrace = filterContext.Exception.StackTrace;
                ex.Arguments  = "";
                ex.DataSource = (int)DataSourceEnum.API;
                ErrRecBll.Instance.AsyncInsert(ex);

                DataExchangeBll.Instance.AsyncInsert((filterContext.RouteData.Values["action"]).ToString(), (filterContext.RouteData.Values["controller"]).ToString(),
                                                     filterContext.Controller.TempData["fullData"].TryParseString(), contentResult.Content);
            }
            catch (Exception ep)
            {
            }
            //filterContext.HttpContext.Response.Clear();
            //filterContext.HttpContext.Response.StatusCode = 200;
            //filterContext.HttpContext.Response.TrySkipIisCustomErrors = true;
        }
Beispiel #3
0
        public override void OnException(MethodExecutionArgs args)
        {
            HS_ErrRec ex = new HS_ErrRec();

            ex.Action     = _methodName;
            ex.AddTime    = DateTime.Now;
            ex.Controller = _className;
            ex.ErrorMsg   = args.Exception.Message;
            ex.IP         = StringUtil.GetIP();
            ex.StackTrace = args.Exception.StackTrace;
            ex.Arguments  = "";
            if (args.Arguments != null && args.Arguments.Count > 0)
            {
                ex.Arguments = args.Arguments.ToJsonString();
            }
            ex.DataSource = (int)DataSourceEnum.SignalR;
            ErrRecBll.Instance.AsyncInsert(ex);
            args.ReturnValue  = JsonStringResult.VerifyFail();
            args.FlowBehavior = FlowBehavior.Return;
        }