/// <summary>
    /// Writes the table content to the output.
    /// </summary>
    /// <param name="dt">Table to write</param>
    protected void WriteDataTable(DataTable dt)
    {
        pnlContent.Controls.Add(new LiteralControl("<h3>" + dt.TableName + "</h3>"));

        if (!DataHelper.DataSourceIsEmpty(dt))
        {
            // Add literal for content
            LiteralControl ltlContent = new LiteralControl();
            pnlContent.Controls.Add(ltlContent);

            // Add control for pager
            UIPager pagerElem = (UIPager)LoadUserControl("~/CMSAdminControls/UI/Pager/UIPager.ascx");
            pagerElem.ID = dt.TableName + "_pager";
            pagerElem.PageSizeOptions = "1,2,5,10,25,50,100,##ALL##";
            if (dt.Columns.Count > 10)
            {
                pagerElem.DefaultPageSize = 1;
            }
            else if (dt.Columns.Count > 6)
            {
                pagerElem.DefaultPageSize = 2;
            }
            pnlContent.Controls.Add(pagerElem);

            // Add pager connector
            UniPagerConnector connectorElem = new UniPagerConnector();
            connectorElem.PagerForceNumberOfResults = dt.Rows.Count;
            pagerElem.PagedControl = connectorElem;
            pnlContent.Controls.Add(connectorElem);

            tables.Add(new object[] { dt, ltlContent, pagerElem, connectorElem });
        }
    }
Example #2
0
    /// <summary>
    /// Writes the table content to the output.
    /// </summary>
    /// <param name="dt">Table to write</param>
    /// <param name="headerLevel">Header level</param>
    private void WriteDataTable(DataTable dt, int headerLevel)
    {
        WriteHeader(dt.TableName, headerLevel);

        if (!DataHelper.DataSourceIsEmpty(dt))
        {
            // Add literal for content
            LiteralControl ltlContent = new LiteralControl();
            pnlContent.Controls.Add(ltlContent);

            // Add control for pager
            UIPager pagerElem = (UIPager)LoadUserControl("~/CMSAdminControls/UI/Pager/UIPager.ascx");
            pagerElem.ID = $"{dt.TableName}_{pnlContent.Controls.OfType<UIPager>().Count() + 1}_pager";
            pagerElem.PageSizeOptions = "1,2,5,10,25,50,100";
            if (dt.Columns.Count > 10)
            {
                pagerElem.DefaultPageSize = 1;
            }
            else if (dt.Columns.Count > 6)
            {
                pagerElem.DefaultPageSize = 2;
            }
            pnlContent.Controls.Add(pagerElem);
            pagerElem.ShowPageSize = false;

            // Add pager connector
            UniPagerConnector connectorElem = new UniPagerConnector();
            connectorElem.PagerForceNumberOfResults = dt.Rows.Count;
            pagerElem.PagedControl = connectorElem;
            pnlContent.Controls.Add(connectorElem);

            tables.Add(new object[] { dt, ltlContent, pagerElem, connectorElem });
        }
    }
Example #3
0
        public ActionResult GetDataList(int pageIndex, int pageSize)
        {
            UIPager pager             = chatServier.GetDataList(pageIndex, pageSize);
            CommonResult <UIPager> cr = new CommonResult <UIPager>(CommonCode.Success, "请求成功", pager);

            //throw new Exception("Action出现了问题");
            return(Json(cr, JsonRequestBehavior.AllowGet));
        }
Example #4
0
        /// <summary>
        /// 获取列表数据
        /// </summary>
        /// <param name="pageIndex"></param>
        /// <param name="pageSize"></param>
        /// <returns></returns>
        public UIPager GetDataList(int pageIndex, int pageSize)
        {
            UIPager uip = new UIPager();

            EFPager <ChatHistories, DateTime> pager = new EFPager <ChatHistories, DateTime>();

            pager.PageIndex = pageIndex;
            pager.PageSize  = pageSize;
            //pager.WhereLambds = x => DbFunctions.DiffDays(x.CreateTime, DateTime.Now) == 0;
            pager.WhereLambds   = x => 1 == 1;
            pager.IsAsc         = false;
            pager.OrderByLambds = o => o.CreateTime;

            IQueryable <ChatHistories> items = LoadEntities <ChatHistories, DateTime>(pager);

            uip.PageSize   = pager.PageSize;
            uip.PageIndex  = pager.PageIndex;
            uip.TotalCount = pager.TotalCount;
            uip.TotalPages = pager.TotalPages;

            List <ChatHistoryView> list = new List <ChatHistoryView>();

            foreach (var it in items)
            {
                ChatHistoryView view = new ChatHistoryView();
                view.ChatContent = Utils.ReplaceIllegalWord(it.ChatContent);
                view.CreateTime  = it.CreateTime.ToString("yyyy-MM-dd HH:mm:ss");
                view.ClientName  = it.ClientName;
                view.IdentityMd5 = it.IdentityMd5;
                view.ImgIndex    = it.ImgIndex;
                list.Add(view);
            }

            uip.ReponseObj = list.OrderBy(x => x.CreateTime).ToList();
            return(uip);
        }
    protected void WriteTablesContent()
    {
        foreach (object[] table in tables)
        {
            // Prepare the components
            DataTable         dt            = (DataTable)table[0];
            LiteralControl    ltlContent    = (LiteralControl)table[1];
            UIPager           pagerElem     = (UIPager)table[2];
            UniPagerConnector connectorElem = (UniPagerConnector)table[3];

            // Handle the different types of direct page selector
            int currentPageSize = pagerElem.CurrentPageSize;
            if (currentPageSize > 0)
            {
                if ((float)connectorElem.PagerForceNumberOfResults / (float)currentPageSize > 20.0f)
                {
                    pagerElem.DirectPageControlID = "txtPage";
                }
                else
                {
                    pagerElem.DirectPageControlID = "drpPage";
                }
            }

            // Bind the pager first
            connectorElem.RaiseOnPageBinding(null, null);

            // Prepare the string builder
            StringBuilder sb = new StringBuilder();

            // Prepare the indexes for paging
            int pageSize = pagerElem.CurrentPageSize;

            int startIndex = (pagerElem.CurrentPage - 1) * pageSize + 1;
            int endIndex   = startIndex + pageSize;

            // Process all items
            int  index = 0;
            bool all   = (endIndex <= startIndex);

            if (dt.Columns.Count > 6)
            {
                // Write all rows
                foreach (DataRow dr in dt.Rows)
                {
                    index++;
                    if (all || (index >= startIndex) && (index < endIndex))
                    {
                        sb.Append("<table class=\"table table-hover\">");

                        // Add header
                        sb.AppendFormat("<thead><tr class=\"unigrid-head\"><th>{0}</th><th class=\"main-column-100\">{1}</th></tr></thead><tbody>", GetString("General.FieldName"), GetString("General.Value"));

                        // Add values
                        foreach (DataColumn dc in dt.Columns)
                        {
                            object value = dr[dc.ColumnName];

                            // Binary columns
                            string content = null;
                            if ((dc.DataType == typeof(byte[])) && (value != DBNull.Value))
                            {
                                byte[] data = (byte[])value;
                                content = "<" + GetString("General.BinaryData") + ", " + DataHelper.GetSizeString(data.Length) + ">";
                            }
                            else
                            {
                                content = ValidationHelper.GetString(value, String.Empty);
                            }

                            if (!String.IsNullOrEmpty(content))
                            {
                                sb.AppendFormat("<tr><td><strong>{0}</strong></td><td class=\"wrap-normal\">", dc.ColumnName);

                                // Possible DataTime columns
                                if ((dc.DataType == typeof(DateTime)) && (value != DBNull.Value))
                                {
                                    DateTime    dateTime    = Convert.ToDateTime(content);
                                    CultureInfo cultureInfo = CultureHelper.GetCultureInfo(MembershipContext.AuthenticatedUser.PreferredUICultureCode);
                                    content = dateTime.ToString(cultureInfo);
                                }

                                // Process content
                                ProcessContent(sb, dr, dc.ColumnName, ref content);

                                sb.Append("</td></tr>");
                            }
                        }

                        sb.Append("</tbody></table>\n");
                    }
                }
            }
            else
            {
                sb.Append("<table class=\"table table-hover\">");

                // Add header
                sb.Append("<thead><tr class=\"unigrid-head\">");
                int h = 1;
                foreach (DataColumn column in dt.Columns)
                {
                    sb.AppendFormat("<th{0}>{1}</th>", (h == dt.Columns.Count) ? " class=\"main-column-100\"" : String.Empty, column.ColumnName);
                    h++;
                }
                sb.Append("</tr></thead><tbody>");

                // Write all rows
                foreach (DataRow dr in dt.Rows)
                {
                    index++;
                    if (all || (index >= startIndex) && (index < endIndex))
                    {
                        sb.Append("<tr>");

                        // Add values
                        foreach (DataColumn dc in dt.Columns)
                        {
                            object value = dr[dc.ColumnName];
                            // Possible DataTime columns
                            if ((dc.DataType == typeof(DateTime)) && (value != DBNull.Value))
                            {
                                DateTime    dateTime    = Convert.ToDateTime(value);
                                CultureInfo cultureInfo = CultureHelper.GetCultureInfo(MembershipContext.AuthenticatedUser.PreferredUICultureCode);
                                value = dateTime.ToString(cultureInfo);
                            }

                            string content = ValidationHelper.GetString(value, String.Empty);
                            content = HTMLHelper.HTMLEncode(content);

                            sb.AppendFormat("<td{0}>{1}</td>", (content.Length >= 100) ? " class=\"wrap-normal\"" : String.Empty, content);
                        }
                        sb.Append("</tr>");
                    }
                }
                sb.Append("</tbody></table>\n");
            }

            ltlContent.Text = sb.ToString();
        }
    }