public ActionResult Index(string sqlValue, bool isSecurityLable = false) { if (Request.Form.AllKeys.Contains("isSecurityLable") || Request.QueryString.ToString().IndexOf("isSecurityLable") > 0) { return(View()); } if (!isSecurityLable /*避免通过 Get 直接请求 Index 方法*/ || sqlValue.Trim().IsEmpty()) { return(View()); } CommondController commond = new CommondController(_db); DataTable T = commond.GetDataTableOneRow(sqlValue); Session["SqlValue"] = sqlValue; ViewBag.sqlValue = sqlValue;//sqlValue.Replace("\r","").Replace("\t"," ").Replace("\n"," "); #region T 不为空的时候 if (T != null && T.Rows.Count > 0) { var CName = T.Columns.Cast <DataColumn>().Select(x => x.ColumnName).ToArray(); var CType = T.Columns.Cast <DataColumn>().Select(x => x.DataType.FullName).ToArray(); ViewBag.ColumnName = CName; ViewBag.ColumnType = CType; ViewBag.zdString = string.Join(",", CName); ViewBag.lxString = string.Join(",", CType); ViewBag.显示的类型 = "System.TimeSpan,System.Byte[]"; ViewBag.排序字段 = CName[0]; ViewBag.排序方式 = "desc"; } #endregion return(View()); }
//[GZipOrDeflate] public ActionResult Category(string report, string title) { if (report.IsEmpty()) { return(Redirect("/Report/Index")); } CommondController commond = new CommondController(_db); rpt_categorydetail categoryDetail = commond.GetCategoryDetail(report); string sqlValue = null; if (HttpContext.Request.QueryString["CustomQuery"] != null) { sqlValue = SessionHelper.GetSqlValue().IsEmpty() ? categoryDetail.Sqlvalue : SessionHelper.GetSqlValue(); } if (HttpContext.Request.QueryString["RestSetUp"] == null && HttpContext.Request.QueryString["CustomQuery"] == null) { SessionHelper.RestSqlValue(); SessionHelper.RestTotalName(); } if (categoryDetail == null) { BugLog.Write("report=------" + report); throw new ArgumentException("报表类别为空 请联系管理员;"); } DataTable T = commond.GetDataTableOneRow(sqlValue ?? categoryDetail.Sqlvalue); #region T 不为空的时候 if (T != null && T.Rows.Count > 0) { var CName = T.Columns.Cast <DataColumn>().Select(x => x.ColumnName).ToArray(); var CType = T.Columns.Cast <DataColumn>().Select(x => x.DataType.FullName).ToArray(); ViewBag.ColumnName = CName; ViewBag.ColumnType = CType; ViewBag.Total = categoryDetail.Total.IsEmpty() ? "" : categoryDetail.Total; ViewBag.zdString = string.Join(",", CName); ViewBag.lxString = string.Join(",", CType); ViewBag.排序字段 = categoryDetail.Sort.IsEmpty() ? CName[0] : CName.Contains(categoryDetail.Sort) ? categoryDetail.Sort : CName[0]; ViewBag.排序方式 = categoryDetail.Order.IsEmpty() ? "desc" : categoryDetail.Order; ViewBag.显示的类型 = "System.TimeSpan,System.Byte[]"; ViewBag.Title = categoryDetail.Detailedname ?? title; ViewBag.report = categoryDetail.Id; } #endregion return(View()); }