public ActionResult Edit(WebsiteBanner Obj_WebsiteBanner, HttpPostedFileBase BannerImage) { try { string BannerName = string.Empty; using (var context = new ChossonKallahAdmin.EF6.ChossonKallah()) { var WebsitebanneridPara = new SqlParameter("@Websitebannerid", Obj_WebsiteBanner.WebsiteBannerID); WebsiteBanner obj_WebsiteBannerResult = context.Database.SqlQuery <WebsiteBanner>("sp_WebsiteBanner_select @Websitebannerid", WebsitebanneridPara).FirstOrDefault(); if (SessionUtilities.SaveImage(BannerImage, "Banner")) { BannerName = Path.GetFileName(BannerImage.FileName); Obj_WebsiteBanner.BannerImage = BannerName; } else { Obj_WebsiteBanner.BannerImage = obj_WebsiteBannerResult.BannerImage; } var WebsitebannerSequenceidPara = new SqlParameter("@Websitebannerid", Obj_WebsiteBanner.WebsiteBannerID); var WebsitebannerSequencePara = new SqlParameter("@Sequence", Obj_WebsiteBanner.Sequence); context.Database.ExecuteSqlCommand("sp_WebsiteBanner_updateSequenceEdit @Sequence,@Websitebannerid", WebsitebannerSequencePara, WebsitebannerSequenceidPara); context.WebsiteBanners.Attach(Obj_WebsiteBanner); context.Entry(Obj_WebsiteBanner).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); TempData["WebsiteBannerSuccess"] = "Record has been update successfully."; return(RedirectToAction("Index")); } } catch (Exception ex) { if (!ex.Message.Contains("See 'EntityValidationErrors' property")) { ViewBag.WebsiteBannerError = ex.Message; } return(View(Obj_WebsiteBanner)); } //try //{ // string BannerName = string.Empty; // using (WebsiteBannerCtl db = new WebsiteBannerCtl()) // { // if (SessionUtilities.SaveImage(BannerImage, "Banner")) // { // BannerName = Path.GetFileName(BannerImage.FileName); // Obj_WebsiteBanner.BannerImage = BannerName; // } // db.update(Obj_WebsiteBanner); // TempData["WebsiteBannerSuccess"] = "Record has been updated successfully."; // } // return RedirectToAction("Index"); //} //catch (Exception ex) //{ // return View(Obj_WebsiteBanner); //} }
public string Responsive(Context context, string Responsive) { var responsive = !Responsive.ToBool(); SessionUtilities.Set( context: context, key: "Responsive", value: responsive.ToString()); return(new ResponseCollection().ToJson()); }
public ContentResult Get(Context context) { var log = new SysLogModel(context: context); var result = context.Authenticated ? SessionUtilities.GetByApi(context: context) : ApiResults.Unauthorized(context: context); log.Finish(context: context, responseSize: result.Content.Length); return(result); }
public async Task CreateWithNameAndPassword(string username, string password) { if (!EntityAssertions.Assert_SenderPlayer(Sender, out Player ply)) { return; } if (!SessionUtilities.AcquireSession(ply, out var session)) { return; } if (session.TryGetAccount(out var accref)) { ply.SendErrorMessage($"You are already logged in!"); accref.Dispose(); return; } //TODO: Determine if this brings any benefit when uncommented. //var (findresult, xrefn) = await AccountUtilities.TryFindAccount(username); //if (findresult == FindAccountResult.Found) //{ // ply.SendErrorMessage($"This account is already registered."); // xrefn.Dispose(); // return; //} //The above attempts to short-circuit when an account is verifiably present in memory. //A creation attempt will confirm whether or not the account exists in storage. (AccountCreateResult result, ObjectReference <Account> refn) = await AccountantPlugin.Instance.Accounts.CreateAccount(username, password); switch (result) { case AccountCreateResult.Success: session.Account = refn; ply.SendSuccessMessage($"The account {username} was successfully created, and you have been logged in."); break; case AccountCreateResult.AlreadyExists: ply.SendErrorMessage($"This account is already registered."); break; case AccountCreateResult.PluginBlocked: ply.SendErrorMessage($"Account creation denied by another plugin."); break; case AccountCreateResult.StorageError: ply.SendErrorMessage($"Account creation failed due to a database error. Try again later."); break; } }
public ActionResult Edit(AdsBanner Obj_AdsBanner, HttpPostedFileBase AdsBannerImage) { try { string AdsBannerName = string.Empty; using (var context = new ChossonKallahAdmin.EF6.ChossonKallah()) { var AdsBannerNamePara = new SqlParameter("@adsbannername", Obj_AdsBanner.AdsBannerName); var AdsBannerVendorIdPara = new SqlParameter("@vendorid", Obj_AdsBanner.VendorID); var AdsBannerIdPara = new SqlParameter("@adsbannerid", Obj_AdsBanner.AdsBannerID); var result = context.Database.SqlQuery <AdsBanner>("sp_AdsBanner_CheckVendorExistsUpdate @adsbannername,@vendorid,@adsbannerid", AdsBannerNamePara, AdsBannerVendorIdPara, AdsBannerIdPara).ToList(); if (result.Count > 0) { ViewBag.AdsBannerExists = "Banner name is already exists."; GetCateory(); GetVendor(); GetPosition(); return(View(Obj_AdsBanner)); } else { var AdsGetBannerIdPara = new SqlParameter("@adsbannerid", Obj_AdsBanner.AdsBannerID); AdsBanner obj_AdsBanners = context.Database.SqlQuery <AdsBanner>("sp_AdsBanner_select @adsbannerid", AdsGetBannerIdPara).FirstOrDefault(); if (SessionUtilities.SaveImage(AdsBannerImage, "AdsBanner", Obj_AdsBanner.AdsBannerName.Trim())) { AdsBannerName = Path.GetFileName(AdsBannerImage.FileName); Obj_AdsBanner.AdsBannerImage = AdsBannerName; } else { Obj_AdsBanner.AdsBannerImage = obj_AdsBanners.AdsBannerImage; } var adsbannerSequenceidPara = new SqlParameter("@adsbannerid", Obj_AdsBanner.AdsBannerID); var adsbannerSequencePara = new SqlParameter("@priority", Obj_AdsBanner.Priority); context.Database.ExecuteSqlCommand("sp_AdsBanner_updateSequenceEdit @priority,@adsbannerid", adsbannerSequencePara, adsbannerSequenceidPara); context.AdsBanners.Attach(Obj_AdsBanner); context.Entry(Obj_AdsBanner).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); TempData["AdsBannerSuccess"] = "Record has been update successfully."; return(RedirectToAction("Index")); } } } catch (Exception ex) { if (!ex.Message.Contains("See 'EntityValidationErrors' property")) { ViewBag.AdsBannerExists = ex.Message; } return(View(Obj_AdsBanner)); } }
private static void SetSession( Context context, SiteSettings ss, View view, bool setSession) { if (setSession) { SessionUtilities.Set( context: context, ss: ss, key: "View", view: view); } }
public async Task <HttpResponseMessage> Delete() { var body = await Request.Content.ReadAsStringAsync(); var context = new Context(apiRequestBody: body); var log = new SysLogModel(context: context); var result = context.Authenticated ? SessionUtilities.DeleteByApi(context: context) : ApiResults.Unauthorized(context: context); log.Finish(context: context, responseSize: result.Content.Length); return(result.ToHttpResponse(Request)); }
public ActionResult Create(WebsiteBanner Obj_WebsiteBanner, string command, HttpPostedFileBase BannerImage) { try { string BannerName = string.Empty; using (var context = new ChossonKallahAdmin.EF6.ChossonKallah()) { if (SessionUtilities.SaveImage(BannerImage, "Banner")) { BannerName = Path.GetFileName(BannerImage.FileName); Obj_WebsiteBanner.BannerImage = BannerName; } Obj_WebsiteBanner.CreatedOn = System.DateTime.Now; Obj_WebsiteBanner.IsDeleted = false; context.WebsiteBanners.Add(Obj_WebsiteBanner); context.SaveChanges(); var WebsitebannerSequenceidPara = new SqlParameter("@websitebannerid", Obj_WebsiteBanner.WebsiteBannerID); context.Database.ExecuteSqlCommand("sp_WebsiteBanner_UpdateSequence @websitebannerid", WebsitebannerSequenceidPara); TempData["WebsiteBannerSuccess"] = "Record has been added successfully."; return(RedirectToAction("Index")); } } catch (Exception ex) { if (!ex.Message.Contains("See 'EntityValidationErrors' property")) { ViewBag.WebsiteBannerError = ex.Message; } return(View(Obj_WebsiteBanner)); } //try //{ // string BannerName = string.Empty; // using (WebsiteBannerCtl db = new WebsiteBannerCtl()) // { // if (SessionUtilities.SaveImage(BannerImage, "Banner")) // { // BannerName = Path.GetFileName(BannerImage.FileName); // Obj_WebsiteBanner.BannerImage = BannerName; // } // db.insert(Obj_WebsiteBanner); // TempData["WebsiteBannerSuccess"] = "Record has been added successfully."; // } // return RedirectToAction("Index"); //} //catch (Exception ex) //{ // return View(Obj_WebsiteBanner); //} }
public ActionResult Create(Location Obj_Location, string command) { try { using (var context = new ChossonKallahAdmin.EF6.ChossonKallah()) { var LocationnamePara = new SqlParameter("@Locationname", Obj_Location.LocationName); var result = context.Database.SqlQuery <Location>("sp_Location_CheckLocationExists @Locationname", LocationnamePara).ToList(); if (result.Count > 0) { ViewBag.LocationExists = "Location name is already exists."; DataTable dt = new DataTable(); var Result = context.Database.SqlQuery <StateData>("sp_StateData_SelectAllForSelectInAddEditLocation").ToList(); dt = SessionUtilities.LINQResultToDataTable(Result); List <SelectListItem> lstObj = new List <SelectListItem>(); SelectListItem sl = new SelectListItem(); sl.Text = "--Please Select--"; sl.Value = "0"; sl.Selected = true; lstObj.Add(sl); foreach (DataRow dr in dt.Rows) { sl = new SelectListItem(); sl.Text = Convert.ToString(dr["FullName"]); sl.Value = Convert.ToString(dr["FullName"]); sl.Selected = false; lstObj.Add(sl); } ViewBag.StateData = lstObj; return(View(Obj_Location)); } else { Obj_Location.CreatedOn = System.DateTime.Now; Obj_Location.IsDeleted = false; context.Locations.Add(Obj_Location); context.SaveChanges(); TempData["LocationSuccess"] = "Record has been added successfully."; return(RedirectToAction("Index")); } } } catch (Exception ex) { if (!ex.Message.Contains("See 'EntityValidationErrors' property")) { ViewBag.LocationExists = ex.Message; } return(View(Obj_Location)); } }
public static bool InRange(Context context, EnumerableRowCollection <DataRow> dataRows) { var inRange = dataRows.Count() <= Parameters.General.CalendarLimit; if (!inRange) { SessionUtilities.Set( context: context, message: Messages.TooManyCases( context: context, data: Parameters.General.CalendarLimit.ToString())); } return(inRange); }
public async Task LoginWithPassword(string password) { if (!EntityAssertions.Assert_SenderPlayer(Sender, out Player ply)) { return; } if (!SessionUtilities.AcquireSession(ply, out var session)) { return; } if (session.TryGetAccount(out var accref)) { ply.SendErrorMessage($"You are already logged in!"); accref.Dispose(); return; } var(result, refn) = await AccountUtilities.TryFindAccount(ply.Name); if (result != FindAccountResult.Found) { switch (result) { case FindAccountResult.NotFound: ply.SendErrorMessage($"This account currently is not registered. Please use /register in order to claim it."); break; case FindAccountResult.Error: ply.SendErrorMessage("An internal server has occured while looking up this account."); break; } return; } Account acc = refn.Object; //TODO: Put on another thread. if (!BCrypt.Net.BCrypt.EnhancedVerify(password, acc.Password)) { ply.SendErrorMessage("The password you provided is invalid."); refn.Dispose(); return; } else { await ply.TryPerformLogon(refn); } }
private void SetData() { var request = HttpContext.Current.Request; SessionData = SessionUtilities.Get(this); request.QueryString.AllKeys .Where(o => o != null) .ForEach(key => QueryStrings.Add(key, request.QueryString[key])); request.Form.AllKeys .Where(o => o != null) .ForEach(key => Forms.Add(key, request.Form[key])); }
public JsonResult GetBanner() { try { using (var context = new ChossonKallahAdmin.EF6.ChossonKallah()) { var result = context.Database.SqlQuery <EF6.WebsiteBanner>("sp_WebSitebanner_select_Front").ToList(); return(Json(SessionUtilities.ConvertDataTableTojSonString(SessionUtilities.LINQResultToDataTable(result)), JsonRequestBehavior.AllowGet)); } } catch (Exception ex) { return(Json(string.Format("Exception {0}", ex.Message), JsonRequestBehavior.AllowGet)); } }
private static void SetSession( Context context, SiteSettings ss, View view, bool setSession, string key = "View", bool useUsersView = false) { if (setSession) { SessionUtilities.Set( context: context, ss: ss, key: key, view: view, sessionGuid: useUsersView ? "@" + context.UserId : null); } }
//select all data from database public string getAll() { try { obj_con.clearParameter(); DataTable dt = ConvertDatareadertoDataTable(obj_con.ExecuteReader("sp_Admin_selectall", CommandType.StoredProcedure)); obj_con.CommitTransaction(); obj_con.closeConnection(); return(SessionUtilities.ConvertDataTableTojSonString(dt)); } catch (Exception ex) { throw new Exception("sp_Admin_selectall:" + ex.Message); } }
public string selectIndexPaging(Int64 PageSize, Int64 PageIndex, string Search) { try { obj_con.clearParameter(); obj_con.addParameter("@PageSize", PageSize); obj_con.addParameter("@PageIndex", PageIndex); obj_con.addParameter("@Search", Search); return(SessionUtilities.ConvertDataTableTojSonString(ConvertDatareadertoDataTable(obj_con.ExecuteReader("sp_Location_selectIndexPaging", CommandType.StoredProcedure)))); } catch (Exception ex) { throw new Exception("sp_Location_selectIndexPaging:" + ex.Message); } }
public static bool InRangeY(Context context, int choicesCount) { var inRange = Parameters.General.CalendarYLimit == 0 || choicesCount <= Parameters.General.CalendarYLimit; if (!inRange) { SessionUtilities.Set( context: context, message: Messages.TooManyRowCases( context: context, data: Parameters.General.CalendarYLimit.ToString())); } return(inRange); }
public static bool InRangeY(Context context, EnumerableRowCollection <DataRow> dataRows) { var inRange = dataRows.Select(o => o.String("GroupByY")).Distinct().Count() <= Parameters.General.CrosstabYLimit; if (!inRange) { SessionUtilities.Set( context: context, message: Messages.TooManyCases( context: context, data: Parameters.General.CrosstabYLimit.ToString())); } return(inRange); }
public async Task ChangePassword(string old_password, string new_password, string new_password_confirm) { if (!EntityAssertions.Assert_SenderPlayer(Sender, out Player ply)) { return; } if (!SessionUtilities.AcquireSession(ply, out var session)) { return; } if (!session.TryGetAccount(out var accountref)) { ply.SendErrorMessage($"You must be logged in to change an account's password."); return; } using (accountref) { if (new_password != new_password_confirm) { ply.SendErrorMessage($"The new password and the confirmation password must be the same."); return; } Account account = accountref.Object; if (!BCrypt.Net.BCrypt.EnhancedVerify(old_password, account.Password)) { ply.SendErrorMessage($"The current password you specified is incorrect."); return; } var hash = BCrypt.Net.BCrypt.EnhancedHashPassword(new_password); account.Password = hash; if (await account.Save()) { ply.SendSuccessMessage($"Your account's password has been successfully updated."); } else { ply.SendErrorMessage($"Your account's password was not updated due to a server error. Please try again."); } } }
public ActionResult Create(AdsBanner Obj_AdsBanner, string command, HttpPostedFileBase AdsBannerImage) { try { string AdsBannerName = string.Empty; using (var context = new ChossonKallahAdmin.EF6.ChossonKallah()) { var AdsBannerNamePara = new SqlParameter("@adsbannername", Obj_AdsBanner.AdsBannerName); var AdsBannerVendorIdPara = new SqlParameter("@vendorid", Obj_AdsBanner.VendorID); var result = context.Database.SqlQuery <AdsBanner>("sp_AdsBanner_CheckAdminExists @adsbannername,@vendorid", AdsBannerNamePara, AdsBannerVendorIdPara).ToList(); if (result.Count > 0) { ViewBag.AdsBannerExists = "Banner name is already exists."; GetCateory(); GetVendor(); GetPosition(); return(View(Obj_AdsBanner)); } else { GetCateory(); GetVendor(); GetPosition(); if (SessionUtilities.SaveImage(AdsBannerImage, "AdsBanner", Obj_AdsBanner.AdsBannerName.Trim())) { AdsBannerName = Path.GetFileName(AdsBannerImage.FileName); Obj_AdsBanner.AdsBannerImage = AdsBannerName; } Obj_AdsBanner.CreateAt = System.DateTime.Now; Obj_AdsBanner.IsDeleted = false; context.AdsBanners.Add(Obj_AdsBanner); context.SaveChanges(); var adsBannersequenceIdpara = new SqlParameter("@adsbannerid", Obj_AdsBanner.AdsBannerID); context.Database.ExecuteSqlCommand("sp_AdsBanner_UpdateSequence @adsbannerid", adsBannersequenceIdpara); TempData["AdsBannerSuccess"] = "Record has been added successfully."; return(RedirectToAction("Index")); } } } catch (Exception ex) { if (!ex.Message.Contains("See 'EntityValidationErrors' property")) { ViewBag.AdsBannerExists = ex.Message; } return(View(Obj_AdsBanner)); } }
public static bool InRangeY(Context context, EnumerableRowCollection <DataRow> dataRows, Column groupBy) { var inRange = groupBy == null || dataRows.Select(o => o.String(groupBy.ColumnName)).Distinct().Count() <= Parameters.General.CalendarYLimit; if (!inRange) { SessionUtilities.Set( context: context, message: Messages.TooManyRowCases( context: context, data: Parameters.General.CalendarYLimit.ToString())); } return(inRange); }
public static void Set(Context context, long siteId) { var data = SessionData(context: context); if (data.ContainsKey(siteId)) { data[siteId] = context.Action; } else { data.Add(siteId, context.Action); } SessionUtilities.Set( context: context, key: "ViewMode", value: data.ToJson()); }
public JsonResult Indexpaging(Int64 PageSize, Int64 PageIndex, string Search) { try { using (var context = new ChossonKallahAdmin.EF6.ChossonKallah()) { var PageSizePara = new SqlParameter("@PageSize", PageSize); var PageIndexPara = new SqlParameter("@PageIndex", PageIndex); var SearchPara = new SqlParameter("@Search", Search); var result = context.Database.SqlQuery <Listview>("sp_Admin_selectIndexPaging @PageSize,@PageIndex,@Search", PageSizePara, PageIndexPara, SearchPara).ToList(); return(Json(SessionUtilities.ConvertDataTableTojSonString(SessionUtilities.LINQResultToDataTable(result)), JsonRequestBehavior.AllowGet)); } } catch (Exception ex) { return(Json(string.Format("Exception {0}", ex.Message), JsonRequestBehavior.AllowGet)); } }
public ActionResult Create() { try { using (var context = new ChossonKallahAdmin.EF6.ChossonKallah()) { ViewBag.StateData = SessionUtilities.GetState(); return(View()); } } catch (Exception ex) { if (!ex.Message.Contains("See 'EntityValidationErrors' property")) { ViewBag.LocationExists = ex.Message; } return(View()); } }
public ActionResult Edit(Int32?Locationid) { using (var context = new ChossonKallahAdmin.EF6.ChossonKallah()) { try { var LocationidPara = new SqlParameter("@Locationid", Locationid); var ResultLocation = context.Database.SqlQuery <Location>("sp_Location_select @Locationid", LocationidPara).FirstOrDefault(); ViewBag.StateData = SessionUtilities.GetState(); return(View(ResultLocation)); } catch (Exception ex) { if (!ex.Message.Contains("See 'EntityValidationErrors' property")) { ViewBag.LocationExists = ex.Message; } return(View()); } } }
public static void Set(Context context, long siteId) { context.Forms.RemoveAll((key, value) => key == "GridCheckAll" || key == "GridUnCheckedItems" || key == "GridCheckedItems"); var data = SessionData(context: context); if (data.ContainsKey(siteId)) { data[siteId] = context.Action; } else { data.Add(siteId, context.Action); } SessionUtilities.Set( context: context, key: "ViewMode", value: data.ToJson()); }
public ActionResult Edit(Int32 Categoryid) { using (var context = new ChossonKallahAdmin.EF6.ChossonKallah()) { try { ViewBag.Categories = SessionUtilities.GetCategories(); var CategoryId = new SqlParameter("@Categoryid", Categoryid); var ResultCategory = context.Database.SqlQuery <Category>("sp_Categories_select @Categoryid", CategoryId).FirstOrDefault(); return(View(ResultCategory)); } catch (Exception ex) { if (!ex.Message.Contains("See 'EntityValidationErrors' property")) { ViewBag.Categories = ex.Message; } return(View()); } } }
public void Logout() { if (!EntityAssertions.Assert_SenderPlayer(Sender, out Player ply)) { return; } if (!SessionUtilities.AcquireSession(ply, out var session)) { return; } if (ply.Signout()) { ply.SendSuccessMessage("You have been succesfully logged out."); } else { ply.SendErrorMessage("You are not logged in!"); } }
public async Task ActAsUserActsAppropriately() { Assert.IsTrue(await await SessionUtilities.StartAsync( async(testSession) => { AssertApi.Unauthorized(await testSession.ActAsUserGetAsync("http://example.com/authorize", (response, fetchActAsUserResources) => response)); var superAdminSession = testSession.GetSuperAdmin(); return(await await superAdminSession.ActAsUserGetAsync("http://example.com/authorize", async(responseGetActAsuser, fetchActAsUsers) => { AssertApi.Success(responseGetActAsuser); var actAsUsers = fetchActAsUsers(); Assert.IsTrue(actAsUsers.Any()); var actAsUser = actAsUsers.First(); var actAsUserLinkParams = System.Web.HttpUtility.ParseQueryString(actAsUser.Link.ToUri().Query); return await await superAdminSession.ActAsUserGetAsync(Guid.Parse(actAsUserLinkParams["token"]), actAsUserLinkParams["RedirectUri"], async(responseGetActAsUserRedirect) => { var redirect = AssertApi.Redirect(responseGetActAsUserRedirect).Headers.Location; var sessionId = Guid.Parse(redirect.GetQueryParam(EastFive.Api.Azure.AzureApplication.QueryRequestIdentfier)); // Fetching without a tokened session succeeds... (per UI dev's whining ;-)) return await testSession.AuthenticationRequestGetAsync(sessionId, (responseAuthRequestPopulatedGet, fetchPopulated) => { var authRequestPopulated = fetchPopulated(); Assert.IsTrue(authRequestPopulated.authorization.HasValue); var userSes = new TestSession(authRequestPopulated.authorization.id.Value); Assert.IsFalse(authRequestPopulated.token.IsNullOrWhiteSpace()); userSes.LoadToken(authRequestPopulated.token); return true; }); }); })); })); }
public JsonResult GetCategories() { try { using (var context = new ChossonKallahAdmin.EF6.ChossonKallah()) { var result = context.Database.SqlQuery <EF6.Category>("sp_Category_select_Front").ToList(); List <EF6.CategoryClass> LstCat = new List <EF6.CategoryClass>(); for (int i = 0; i < result.Count; i++) { EF6.CategoryClass childcat = new EF6.CategoryClass(); childcat.CategoryId = result[i].CategoryId; childcat.CategoryName = result[i].CategoryName; LstCat.Add(childcat); } for (int i = 0; i < LstCat.Count; i++) { var CategoryIdPara = new SqlParameter("@CategoryId", LstCat[i].CategoryId); var SubCat = context.Database.SqlQuery <EF6.CategoryClass>("sp_Category_Sub_select_Front @CategoryId", CategoryIdPara).ToList(); LstCat[i].childCat = new List <EF6.CategoryClass>(); for (int j = 0; j < SubCat.Count; j++) { EF6.CategoryClass childcat = new EF6.CategoryClass(); childcat.CategoryId = SubCat[j].CategoryId; childcat.CategoryName = SubCat[j].CategoryName; LstCat[i].childCat.Add(childcat); } } return(Json(SessionUtilities.ConvertDataTableTojSonString(SessionUtilities.LINQResultToDataTable(LstCat)), JsonRequestBehavior.AllowGet)); } } catch (Exception ex) { return(Json(string.Format("Exception {0}", ex.Message), JsonRequestBehavior.AllowGet)); } }