public ActionResult CriteriosagrupacionLinUpdate([ModelBinder(typeof(DevExpressEditorsBinder))] CriteriosagrupacionLinModel item)
        {
            var model = Session[session] as List <CriteriosagrupacionLinModel>;

            if (ModelState.IsValid)
            {
                var editItem = model.Single(f => f.Id == item.Id);
                editItem.Campo = item.Campo;
                editItem.Orden = item.Orden;
                if (model.Count(f => f.Campo == editItem.Campo) > 1)
                {
                    throw new ValidationException("No se puede repetir el campo de la agrupación");
                }
                Session[session] = model;
            }

            return(PartialView("_criteriosagrupacionlin", model));
        }
        public ActionResult CriteriosagrupacionLinAddNew([ModelBinder(typeof(DevExpressEditorsBinder))] CriteriosagrupacionLinModel item)
        {
            var model = Session[session] as List <CriteriosagrupacionLinModel>;

            try
            {
                if (ModelState.IsValid)
                {
                    var max = model.Any() ? model.Max(f => f.Id) : 0;
                    item.Id = max + 1;
                    model.Add(item);

                    Session[session] = model;
                }
            }
            catch (ValidationException)
            {
                model.Remove(item);
                throw;
            }

            return(PartialView("_criteriosagrupacionlin", model));
        }