示例#1
0
        public ActionResult Edit(Data.Models.Definition.ApplicationOption model, string[] columns)
        {
            Data.Models.Definition.ApplicationOption modelUpdate = GetModel(model.ApplicationId, model.OptionId);

            try
            {
                if (ModelState.IsValid)
                {
                    model.ApplicationOptionColumns = modelUpdate.ApplicationOptionColumns;
                    SetColumns(model, columns);
                    DataBase.ApplicationOptionColumns.Update(model.ApplicationOptionColumns, modelUpdate.ApplicationOptionColumns);

                    DataBase.ApplicationOptions.Update(modelUpdate);
                    DataBase.Save();

                    return(RedirectToAction("Index"));
                }
            }
            catch
            {
                this.AddDefaultErrorMessage();
            }

            model.ApplicationOptionColumns = modelUpdate.ApplicationOptionColumns;
            SetColumns(model, columns);

            return(View(model));
        }
示例#2
0
        public void SetColumns(Data.Models.Definition.ApplicationOption model, string[] columns)
        {
            foreach (var col in model.ApplicationOptionColumns)
            {
                col.Visible = false;
            }

            if (columns != null)
            {
                foreach (var insert in columns.Where(p => p != "false"))
                {
                    string[] keyParts = insert.Split('-');

                    string columnName = Convert.ToString(keyParts[2]);

                    var det = model.ApplicationOptionColumns.Where(p => p.ColumnName == columnName).FirstOrDefault();

                    if (det != null)
                    {
                        det.Visible = true;
                    }
                }
            }
        }
示例#3
0
        private Data.Models.Definition.ApplicationOption GetModel(string applicationId, string optionId)
        {
            Data.Models.Definition.ApplicationOption result = DataBase.ApplicationOptions.Get(p => p.ApplicationId == applicationId && p.OptionId == optionId, includeProperties: "ApplicationOptionColumns").SingleOrDefault();

            return(result);
        }