public ActionResult SaveHeatSheetEvent(ViewHeatSheetEvent vsme) { Swimomatic.Entity.HeatSheetEvent heatSheetEvent = null; try { bool isValid = true; heatSheetEvent = GetHeatSheetEventFromVSME(vsme); if (!vsme.ValidateHeatSheetEvent(ModelState)) { isValid = false; } if (isValid && BizMgr.HeatSheetEventExists(vsme.Distance, heatSheetEvent.SwimEventID, vsme.HeatSheetID)) { ModelState.AddModelError("Event", "This event already exists."); isValid = false; } if (!isValid) { ViewBag.HeatSheetEvent = GetHeatSheetEvent(vsme.HeatSheetID); return PartialView("_HeatSheetEvent"); } else { heatSheetEvent.HeatSheetEventID = BizMgr.SaveHeatSheetEvent(heatSheetEvent); //Clear the cached so new event will be included in response DataCache.Remove("HeatSheetEvents" + heatSheetEvent.HeatSheetID.ToString()); } } catch (Exception ex) { LogController.LogError(ex, LogEntryType.NormalError, "", "", "SystemUserID=" + base.CurrentUser.SystemUserID.ToString(), "HeatSheetID=" + vsme.HeatSheetEventID.ToString()); } return GetEligibleSwimmers(heatSheetEvent.HeatSheetEventID); }