private JsonResult Message(Utilities.JSONMessageObject message) { if (JsonpCallback != string.Empty) { return new Utilities.Services.JsonpResult(JsonpCallback) { Data = message, ContentType = "application/javascript", JsonRequestBehavior = JsonRequestBehavior.AllowGet } } ; else { return new JsonResult() { Data = message, ContentType = "application/json", JsonRequestBehavior = JsonRequestBehavior.AllowGet } }; }
private void OutputMessage(Utilities.JSONMessageObject data) { data.LoggedIn = false; data.IsAdmin = false; data.Success = false; Response.StatusCode = 200; if (Request.ContentType.ToLower().Contains("application/json")) { Response.ContentType = "application/json; charset=utf-8"; Response.Write(data.toJSON()); } else if (Request.ContentType.ToLower().Contains("application/jsonp") || Request.QueryString.AllKeys.Contains(Controllers.BaseController.DEFAULT_JSONP_CALLBACK_PARAMETER)) { Response.ContentType = "application/javascript; charset=utf-8"; Response.Write(Request.QueryString[Controllers.BaseController.DEFAULT_JSONP_CALLBACK_PARAMETER].ToString() + "(" + data.toJSON() + ");"); } else { Response.ContentType = "text/html; charset=utf-8"; System.Text.StringBuilder MessageBuilder = new System.Text.StringBuilder(); if (data.ServerExceptions.Count > 0) { MessageBuilder.Append("<h2>Server Exceptions</h2><ul>"); foreach (var Exception in data.ServerExceptions) { MessageBuilder.Append("<li>" + Exception.Message + "</li>"); } } if (data.ClientExceptions.Count > 0) { MessageBuilder.Append("<h2>Client Exceptions</h2><ul>"); foreach (var Exception in data.ClientExceptions) { MessageBuilder.Append("<li>" + Exception.Number + ": <b>" + Exception.Source + "</b> caused error: " + Exception.Message + ", value: " + Exception.Value + "</li>"); } } Response.Write(String.Format(System.IO.File.ReadAllText(Server.MapPath("/Content/error.htm")), MessageBuilder.ToString())); } }