コード例 #1
0
    public String getDataTable(
      bool isIncludeData = false,
      bool isIncludeFooter = true,
      String qDataTableID = "qViewTable") {
      StringBuilder Table = new StringBuilder();
      StringBuilder THead = new StringBuilder();

      THead.AppendLine("<tr>");
      foreach (var Column in ColumDef) {
        THead.Append("<th>");
        THead.Append(Util.toCaption(Column));
        THead.AppendLine("</th>");
      }//foreach
      if (IsPrimaryKey) THead.Append("<th class=\"menu\">&nbsp;</th>");
      THead.AppendLine("</tr>");

      Table.AppendLine($"<table id=\"{qDataTableID}\" class=\"{ClassName}\">");
      Table.AppendLine("<thead>");
      Table.Append(THead);

      Table.AppendLine("</thead>");

      if (isIncludeData) {
        Table.AppendLine("<tbody>");
        Table.Append(getTableRows());
        Table.AppendLine("</tbody>");
      }

      //add total row to the sql
      if (!String.IsNullOrEmpty(TotalSQL)) {
        Dictionary<String, Object> Row = Util.getDBRow(TotalSQL);
        StringBuilder TotalRow = new StringBuilder();
        TotalRow.AppendLine("<tfoot>");
        TotalRow.AppendLine("<tr>");
        foreach (var Column in Row) {
          switch (Column.Key.ToLower()) {
          case "hasrows":
          break;
          default:
          TotalRow.AppendLine("<th>" + Column.Value.ToString() + "</th>");
          break;
          }
        }
        if (IsPrimaryKey) TotalRow.AppendLine("<th></th>");
        TotalRow.AppendLine("</tr>");
        TotalRow.AppendLine("</tfoot>");
        Table.Append(TotalRow);
      }


      if (isIncludeFooter) {
        Table.AppendLine("<tfoot>");
        Table.Append(THead);
        Table.AppendLine("</tfoot>");
      }

      Table.AppendLine("</table>");
      return Table.ToString();
    }//getDataTable()
コード例 #2
0
        public String getTable()
        {
            int           Col   = 0;
            StringBuilder Table = new StringBuilder();

            using (var ctx = new ExponentPortalEntities())
                using (var cmd = ctx.Database.Connection.CreateCommand()) {
                    ctx.Database.Connection.Open();
                    cmd.CommandText = SQL;
                    using (var reader = cmd.ExecuteReader()) {
                        //For each row
                        while (reader.Read())
                        {
                            Table.AppendLine("<table class=\"qDetailView\">");
                            for (int i = 0; i < reader.FieldCount; i++)
                            {
                                Col = Col + 1;
                                if (Col == 1)
                                {
                                    Table.AppendLine("<tr>");
                                }
                                Table.Append("<td>");
                                Table.Append("<span class=\"caption\">");
                                Table.Append(Util.toCaption(reader.GetName(i)));
                                Table.Append(":</span>");
                                Table.Append("<span class=\"value\">");
                                //checking whether the column required link
                                if (FormatCols.ContainsKey(reader.GetName(i)))
                                {
                                    Table.Append(FormatCols[reader.GetName(i)]);
                                }
                                else
                                {
                                    Table.Append("$" + reader.GetName(i).ToString() + "$");
                                }
                                Table.Append("</span>");
                                Table.Append("</td>");
                                if (Col >= Columns)
                                {
                                    Col = 0;
                                    Table.AppendLine("</tr>");
                                }
                            } //for


                            for (int i = 0; i < reader.FieldCount; i++)
                            {
                                Table.Replace("$" + reader.GetName(i) + "$", reader.GetValue(i).ToString());
                            }



                            //add additional columns if required
                            if (Col > 0)
                            {
                                for (int i = Col + 1; i <= Columns; i++)
                                {
                                    Table.AppendLine("<td></td>");
                                }
                                Table.AppendLine("</tr>");
                            }


                            Table.AppendLine("</table>");
                        } //while
                    }     //using reader
                }//using database
            return(Table.ToString());
        } //getTable()