public void AreaFormView_InsertItem(Area area) { if (ModelState.IsValid) { try { // då validering är ok sparas det nya ansvarsområdet Service service = new Service(); service.SaveArea(area); Session["Sucess"] = "Ansvarsområdet har lagts till"; // och användaren skickas tillbaka till listan med ansvarsområden Response.RedirectToRoute("Areas", null); Context.ApplicationInstance.CompleteRequest(); } catch (Exception) { ModelState.AddModelError(String.Empty, "Fel inträffade då kunden skulle läggas till."); } } }
// metod för att validera ett ansvarsobjekt private bool ValidateArea(Area area) { var validationContext = new ValidationContext(area); var validationResults = new List<ValidationResult>(); if (!Validator.TryValidateObject(area, validationContext, validationResults, true)) { return false; } return true; }
// spara ansvarsområde public void SaveArea(Area area) { if (!ValidateArea(area)) { throw new ValidationException("Ansvarsområdet klarade inte valideringen"); } // om nytt if (area.AreaId == 0) { // lägg till AreaDAL.InsertArea(area); } else { // annars uppdatera befintlig AreaDAL.UpdateArea(area); } }