Example #1
0
        public override void OnException(System.Web.Mvc.ExceptionContext filterContext)
        {
            StringBuilder lobjLogBuilder = new StringBuilder();

            lobjLogBuilder.Append("Error occurred in controller action.");
            lobjLogBuilder.Append(string.Format("Controller-{0};", filterContext.RouteData.Values["controller"]));
            lobjLogBuilder.Append(string.Format("Action-{0};", filterContext.RouteData.Values["action"]));
            lobjLogBuilder.Append(string.Format("ExceptionMessage-{0};", filterContext.Exception.InnerException.Message));
            ServerLogger.Error(lobjLogBuilder.ToString());
            filterContext.ExceptionHandled = true;
            MessageModel  msgModel   = new MessageModel(MessageType.Error, ExceptionHelper.GetMessage(filterContext.Exception));
            ResultDataBag lobjResult = new ResultDataBag(true, msgModel, null);

            filterContext.Result = new JsonResult()
            {
                Data = lobjResult, JsonRequestBehavior = JsonRequestBehavior.AllowGet
            };
            base.OnException(filterContext);
        }
Example #2
0
        public static HttpResponseMessage BuildJsonResponse(HttpStatusCode code, Object resultData, MessageType type, string message)
        {
            HttpResponseMessage result = null;

            try
            {
                bool          hasMessage = !string.IsNullOrEmpty(message);
                MessageModel  msgModel   = hasMessage ? new MessageModel(type, message) : null;
                ResultDataBag lobjResult = new ResultDataBag(hasMessage, msgModel, resultData);

                String str = JsonConvert.SerializeObject(lobjResult);
                result = new HttpResponseMessage {
                    StatusCode = code, Content = new StringContent(str, Encoding.GetEncoding("UTF-8"), "application/json")
                };
            }
            catch (Exception ex)
            {
                result = new HttpResponseMessage {
                    StatusCode = HttpStatusCode.InternalServerError, Content = new StringContent(ex.Message, Encoding.GetEncoding("UTF-8"), "application/json")
                };
                ServerLogger.Error(ex.Message);
            }
            return(result);
        }