public async Task<ActionResult> Rules(Models.BillingRules billingRules) { if (ModelState.IsValid) { String ValidationErrors; var BillingModule = new BillingModule.RulesManager(); if (String.Equals(billingRules.CalculateField, "Custom")) { billingRules.CalculateField = Request.Form["CalculateFieldCustom"]; } var IsValid = BillingModule.IsValid(billingRules, out ValidationErrors); if(!IsValid) { ModelState.AddModelError("", ValidationErrors); return View(billingRules); } if(billingRules.ApplyCondition == null) billingRules.ApplyCondition = String.Empty; if(billingRules.RuleID > 0) { db.Entry(billingRules).State = EntityState.Modified; } else { db.BillingRules.Add(billingRules); } await db.SaveChangesAsync(); return RedirectToAction("AllRules"); } ModelState.AddModelError("", "Invalid Model State. Please try again..."); return View(billingRules); }
public ActionResult Rules([Bind(Prefix="ID")]int RuleID = 0) { Models.BillingRules billingRules = null; if (RuleID > 0) { billingRules = db.BillingRules.Where(w => w.RuleID == RuleID).FirstOrDefault(); } if (billingRules == null) billingRules = new BillingRules(); return View(billingRules); }