public ActionResult Index() { return authenticatedAction(new String[] { "UR" }, () => formAction( () => { logger.Debug(className + ".Index accessed."); ViewData["Items"] = table.OrderBy(p => p.sortIndex).ToList(); return View(); }, () => sideEffectingAction(() => { logger.Debug(className + ".Index updating."); //update properties of each row, with the exception of... var formVars = extractRowParams(Request.Form); foreach (KeyValuePair<String, Dictionary<String, String>> itemPair in formVars) { var code = itemPair.Value["code"]; Status possibleItems = table.FirstOrDefault(p => p.code == code); //VALIDATION HAPPENS HERE validationLogPrefix = className + ".Index"; ValidateStrLen(itemPair.Value["description"], 32, "Status descriptions"); //AND THEN ENDS. //does it exist - or do we have to add it in? if (possibleItems != null) { possibleItems.description = itemPair.Value["description"]; logger.DebugFormat(className + ".Index updating {0}", possibleItems.ToString()); } else { possibleItems = new Status(); possibleItems.code = itemPair.Value["code"]; possibleItems.description = itemPair.Value["description"]; possibleItems.active_p = "A"; table.AddObject(possibleItems); logger.ErrorFormat(className + ".Index adding {0} with description {1}", itemPair.Key, itemPair.Value["description"]); } //set the "active" as well. if (itemPair.Value.ContainsKey("active")) { possibleItems.active_p = "A"; } else { possibleItems.active_p = "N"; } table.Context.SaveChanges(); } //orderingindex, which we do seperately. setSortIndexes(table, x => x.code); updateTableTimestamp("T_CRFSTS"); } ))); }
/// <summary> /// Deprecated Method for adding a new object to the Statuses EntitySet. Consider using the .Add method of the associated ObjectSet<T> property instead. /// </summary> public void AddToStatuses(Status status) { base.AddObject("Statuses", status); }
/// <summary> /// Create a new Status object. /// </summary> /// <param name="code">Initial value of the code property.</param> /// <param name="description">Initial value of the description property.</param> /// <param name="sortIndex">Initial value of the sortIndex property.</param> /// <param name="active_p">Initial value of the active_p property.</param> public static Status CreateStatus(global::System.String code, global::System.String description, global::System.Int16 sortIndex, global::System.String active_p) { Status status = new Status(); status.code = code; status.description = description; status.sortIndex = sortIndex; status.active_p = active_p; return status; }