Пример #1
0
 protected void UnAuthorizedReceived(PacketHeader header, Connection connection, int code)
 {
     if (UnAuthorized != null)
     {
         UnAuthorized.Invoke(code, EventArgs.Empty);
     }
 }
Пример #2
0
        protected virtual ActionResult CreateActionResult(ExceptionContext filterContext, int statusCode)
        {
            var ctx            = new ControllerContext(filterContext.RequestContext, filterContext.Controller);
            var statusCodeName = ((HttpStatusCode)statusCode).ToString();

            string             viewName = null;
            ViewDataDictionary viewData = null;

            if (filterContext.Exception.GetType() == typeof(BusinessRuleException))
            {
                viewName = SelectFirstView(ctx,
                                           "~/Views/Error/UnAuthorized.cshtml",
                                           "~/Views/Error/General.cshtml",
                                           statusCodeName,
                                           "Error");

                string username = filterContext.HttpContext.User.Identity.Name;

                var          baseModel = ((BaseController)filterContext.Controller).GetBaseObject();
                UnAuthorized model     = new UnAuthorized(baseModel)
                {
                    Exception = filterContext.Exception
                };

                viewData = new ViewDataDictionary <UnAuthorized>(model);
            }
            else
            {
                viewName = SelectFirstView(ctx,
                                           string.Format("~/Views/Error/{0}.cshtml", statusCodeName),
                                           "~/Views/Error/General.cshtml",
                                           statusCodeName,
                                           "Error");

                var controllerName = (string)filterContext.RouteData.Values["controller"];
                var actionName     = (string)filterContext.RouteData.Values["action"];

                HandleErrorInfo model = new HandleErrorInfo(filterContext.Exception, controllerName, actionName);
                viewData = new ViewDataDictionary <HandleErrorInfo>(model);
            }


            var result = new ViewResult
            {
                ViewName = viewName,
                ViewData = viewData,
            };

            result.ViewBag.StatusCode = statusCode;
            return(result);
        }