public virtual IActionResult CoreView() #region { string tmplCode = Request.Query["tmplCode"].ToString(); string sql = "SELECT * FROM S_UI_List"; List <S_UI_List> uiLists = sqlHelper.ExecuteList <S_UI_List>(sql).Where(c => c.Code == tmplCode).ToList(); S_UI_List listDef = uiLists.FirstOrDefault(); UIBuilder uiFO = new UIBuilder(); ViewBag.ListHtml = uiFO.CreateListHtml(tmplCode); ViewBag.Script = uiFO.CreateListScript(tmplCode); ViewBag.RightKeyHtml = ""; ViewBag.FixedFields = string.Format("var FixedFields={0};", Newtonsoft.Json.JsonConvert.SerializeObject(uiFO.GetFixedWidthFields(tmplCode))); ViewBag.Title = listDef.Name; ViewBag.VirtualScroll = "false"; var isColumnEdit = false; if (!string.IsNullOrEmpty(listDef.LayoutGrid)) { var settings = JsonHelper.ToObject(listDef.LayoutGrid); if (settings.GetValue("allowCellEdit") == "true") { isColumnEdit = true; } if (!String.IsNullOrEmpty(settings.GetValue("virtualScroll"))) { ViewBag.VirtualScroll = settings.GetValue("virtualScroll"); } } var tab = new Tab(); if (!isColumnEdit) { //不可标签式查询 var fields = JsonHelper.ToList(listDef.LayoutField); foreach (var field in fields) { if (!field.ContainsKey("Settings")) { continue; } var settings = JsonHelper.ToObject(field["Settings"].ToString()); if (!settings.ContainsKey("EnumKey") || settings["EnumKey"].ToString() == "") { continue; } if (!settings.ContainsKey("TabSearchName") || settings["TabSearchName"].ToString() == "") { continue; } UICategory category = null; //根据配置决定是否显示‘全部’选项 var hasAllAttr = true; string enumKey = settings["EnumKey"].ToString(); if (settings.ContainsKey("ShowAll") && settings["ShowAll"].ToString() == "false" && settings.ContainsKey("TabSearchDefault") && !String.IsNullOrEmpty(settings["TabSearchDefault"].ToString())) { hasAllAttr = false; } category = CategoryFactory.GetCategoryByString(enumKey, settings["TabSearchName"].ToString(), field["field"].ToString(), hasAllAttr); //默认值 if (settings.ContainsKey("TabSearchDefault") && settings["TabSearchDefault"].ToString() != "") { category.SetDefaultItem(settings["TabSearchDefault"].ToString()); } else { category.SetDefaultItem(); } //多选或单选 if (settings.ContainsKey("TabSearchMulti") && settings["TabSearchMulti"].ToString() == "false") { category.Multi = false; } else { category.Multi = true; } tab.Categories.Add(category); } } if (tab.Categories.Count > 0) { tab.IsDisplay = true; ViewBag.Tab = tab; ViewBag.Layout = "~/Views/Shared/_AutoListLayoutTab.cshtml"; } else { ViewBag.Layout = "~/Views/Shared/_Layout.cshtml"; } return(View()); }