实验室网站:专利逻辑页面的代码

2017-07-09 20:06:59  访问(1913) 赞(0) 踩(0)



  • 几个技术点:
    1、Repeater绑定
    2、字段排序

  • <%@ Page Language="C#" AutoEventWireup="true" CodeFile="ZL.aspx.cs" Inherits="ZL"
        ValidateRequest="false" %>
    
    <%@ Register Src="UserControls/LeftOne.ascx" TagName="LeftOne" TagPrefix="uc1" %>
    <%@ Register Src="UserControls/LeftCYXZ.ascx" TagName="LeftCYXZ" TagPrefix="uc1" %>
    <%@ Register Src="UserControls/LeftCYLJ.ascx" TagName="LeftCYLJ" TagPrefix="uc1" %>
    <%@ Register Src="UserControls/WebTop.ascx" TagName="WebTop" TagPrefix="uc1" %>
    <%@ Register Src="UserControls/WebFooter.ascx" TagName="WebFooter" TagPrefix="uc1" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>
            <%=WebPageTitle %></title>
        <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
        <link href="<%=strPhyPath %>/css/lab.css" rel="stylesheet" type="text/css" />
        <link href="<%=strPhyPath %>/css/HrefItem.css" rel="stylesheet" type="text/css" />
    </head>
    <body>
        <form id="form1" runat="server">
        <uc1:WebTop ID="WebTop1" runat="server" />
        <table width="1200" border="0" align="center" cellpadding="0" cellspacing="0">
            <tr>
                <td width="240" valign="top">
                    <table width="100%" height="50" border="0" align="center" cellpadding="0" cellspacing="0">
                        <tr>
                            <td height="5">
                                &nbsp;
                            </td>
                        </tr>
                        <tr>
                            <td height="2" bgcolor="#0078D7">
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <img src="<%=strPhyPath %>/img/fx.jpg" width="240" height="11" alt="" />
                            </td>
                        </tr>
                        <tr>
                            <td bgcolor="#0078D7">
                                <table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
                                    <tr>
                                        <td height="40" colspan="2" bgcolor="#0078D7" class="STYLE1">
                                            分类
                                        </td>
                                    </tr>
                                    <asp:Repeater ID="rp_Nav" runat="server">
                                        <ItemTemplate>
                                            <tr>
                                                <td width="10%" height="40" bgcolor="#0078D7">
                                                    <img src="<%=strPhyPath %>/img/dot.jpg" width="3" height="3" />
                                                </td>
                                                <td width="90%" height="40" bgcolor="#0078D7" class="STYLE2">
                                                    <a href="<%#DBH.ConvertUrl(Eval(NI._newsSort.ListUrl)) %>" title="<%#DBH.ConvertObj(Eval(NI._newsSort.TheName)) %>"
                                                        target="<%#DBH.GetTarget(Eval(NI._newsSort.LinkTarget)) %>" class="NewsHrefSTYLE2">
                                                        <%#DBH.HighLighObj(Eval(NI._newsSort.TheName),Eval(NI._newsSort.ID), curNewSortId)%></a>
                                                </td>
                                            </tr>
                                            <tr>
                                                <td height="2" colspan="2" bgcolor="#0078D7">
                                                    <img src="<%=strPhyPath %>/img/line2.jpg" width="212" height="2" />
                                                </td>
                                            </tr>
                                        </ItemTemplate>
                                    </asp:Repeater>
                                    <tr>
                                        <td height="10" colspan="2" bgcolor="#0078D7">
                                            &nbsp;
                                        </td>
                                    </tr>
                                </table>
                            </td>
                        </tr>
                        <tr>
                            <td height="6">
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <!-- 常用链接 -->
                                <uc1:LeftCYLJ ID="LeftCYLJ1" runat="server" />
                            </td>
                        </tr>
                        <tr>
                            <td height="6">
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <!-- 常用下载 -->
                                <uc1:LeftCYXZ ID="LeftCYXZ1" runat="server" />
                            </td>
                        </tr>
                    </table>
                </td>
                <td width="20">
                    &nbsp;
                </td>
                <td valign="top">
                    <table width="100%" border="0" cellspacing="0" cellpadding="0">
                        <tr>
                            <td colspan="2">
                                <table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">
                                    <tr>
                                        <td width="9" height="40" class="STYLE3">
                                            &nbsp;
                                        </td>
                                        <td height="40" class="STYLE3">
                                            当前位置:&nbsp;<a href="<%=WB.IndexUrl %>" class="NewsHrefSTYLE3" target="_self">首页</a><%=newsSortNav%></h1>
                                        </td>
                                        <td height="40" class="STYLE3" align="right" colspan="2">
                                            <asp:TextBox ID="txt_Search" runat="server" CssClass="textbox_search"></asp:TextBox>
                                            <asp:Button ID="btn_Search" Text="搜索" runat="server" OnClick="btn_Search_Click" OnClientClick="OnJsSearchClick(); return false;" />
                                        </td>
                                    </tr>
                                    <tr>
                                        <td colspan="4" class="STYLE3">
                                            <img src="<%=strPhyPath %>/img/l7.jpg" width="941" height="2" alt="" />
                                        </td>
                                    </tr>
                                    <tr>
                                        <td height="5" colspan="4" align="left">
                                        </td>
                                    </tr>
                                    <tr>
                                        <td colspan="4" align="left">
                                            <table class="DL">
                                                <tr class="DL">
                                                    <th class="DL" style="width: 40px;">
                                                        序号
                                                    </th>
                                                    <th class="DL">
                                                        <asp:Literal runat="server" ID="title_TheName" Text="专利名称"></asp:Literal>
                                                    </th>
                                                    <th class="DL">
                                                        <asp:Literal runat="server" ID="title_TheCode" Text="专利号"></asp:Literal>
                                                    </th>
                                                    <th class="DL" style="min-width: 95px;">
                                                        <asp:Literal runat="server" ID="title_SQRQ" Text="授权日期"></asp:Literal>
                                                    </th>
                                                    <th class="DL" style="min-width: 85px;">
                                                        <asp:Literal runat="server" ID="title_FMR" Text="发明人"></asp:Literal>
                                                    </th>
                                                </tr>
                                                <asp:Repeater runat="server" ID="rp_List">
                                                    <ItemTemplate>
                                                        <tr class="DL">
                                                            <td class="<%#DataBindGetTdClass(Container.ItemIndex) %>">
                                                                <asp:Literal ID="lt_Seq" runat="server"></asp:Literal>
                                                            </td>
                                                            <td class="<%#DataBindGetTdClass(Container.ItemIndex) %>">
                                                                <asp:Literal ID="lt_TheName" runat="server"></asp:Literal>
                                                            </td>
                                                            <td class="<%#DataBindGetTdClass(Container.ItemIndex) %>">
                                                                <%#Eval(BNI.TheCode)%>
                                                            </td>
                                                            <td class="<%#DataBindGetTdClass(Container.ItemIndex) %>">
                                                                <%#Eval(BNI.SQRQ)%>
                                                            </td>
                                                            <td class="<%#DataBindGetTdClass(Container.ItemIndex) %>">
                                                                <%#Eval(BNI.FMR)%>
                                                            </td>
                                                        </tr>
                                                    </ItemTemplate>
                                                </asp:Repeater>
                                            </table>
                                        </td>
                                    </tr>
                                    <tr style="display: none;">
                                        <td colspan="4" align="left">
                                            <asp:Literal ID="lt_TheContent" runat="server"></asp:Literal>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td height="40" colspan="4" align="left">
                                            <wuqi:AspNetPager CssClass="paginator" CurrentPageButtonClass="cpb" ID="detailAspNetPager"
                                                PageSize="10" runat="server" RecordCount="0" FirstPageText="首页" LastPageText="尾页"
                                                NextPageText="下一页" PrevPageText="上一页" PageIndexBoxStyle="width:50px" ShowPageIndexBox="Auto"
                                                PageIndexBoxType="DropDownList" TextBeforePageIndexBox="转到第" TextAfterPageIndexBox="页"
                                                UrlPaging="true" UrlPageSizeName="pagesize" UrlPageIndexName="pageindex" Width="100%"
                                                LayoutType="Table" ShowNavigationToolTip="true" CustomInfoHTML="" ShowDisabledButtons="true"
                                                AlwaysShow="true" ShowCustomInfoSection="Never" PagingButtonSpacing="8px">
                                            </wuqi:AspNetPager>
                                        </td>
                                    </tr>
                                </table>
                            </td>
                        </tr>
                        <tr>
                            <td colspan="2">
                                &nbsp;
                            </td>
                        </tr>
                    </table>
                </td>
            </tr>
        </table>
        <table width="1200" height="10" border="0" align="center" cellpadding="0" cellspacing="0">
            <tr>
                <td height="10">
                    &nbsp;
                </td>
            </tr>
        </table>
        <uc1:WebFooter ID="WebFooter1" runat="server" />
        </form>
    </body>
    </html>
    
    <script language="javascript" type="text/javascript">
        function OnJsSearchClick() {
            var kwCtrl = document.getElementById("<%=txt_Search.ClientID %>");
            var kw = kwCtrl.value;
    
            var goUrl = "<%=preUrl %>" + escape(kw);
    
            window.location.href = goUrl;
        }
    
    
        // 排序 //
        function OnJsOrderByClick(dataColumnName, dataColumnOrder) {
            var goUrl = "<%=orderUrl %>" + dataColumnName + "." + dataColumnOrder;
    
            window.location.href = goUrl;
        }
    
    
    </script>
    
    
    
  • using System;
    using System.Collections.Generic;
    
    using System.Web.UI.WebControls;
    using SlowX.DAL.Helpers;
    using SlowX.Functions.Functions;
    using SlowX.NewsItem.Items;
    using System.Text;
    using SlowX.Core.ICoreClasses;
    using SlowX.Core.Model;
    using ZJL.LabLib.Classes;
    
    public partial class ZL
        :
        WebPageBase
    {
        /// <summary>
        /// 
        /// </summary>
        internal class CtrlIndex
        {
            /// <summary>
            /// 
            /// </summary>
            public readonly static CtrlIndex CI = new CtrlIndex();
    
            /// <summary>
            /// 
            /// </summary>
            public CtrlIndex()
            {
    
            }
    
            /// <summary>
            /// 
            /// </summary>
            public string lt_Seq
            {
                get
                {
                    return "lt_Seq";
                }
            }
    
    
            /// <summary>
            /// 
            /// </summary>
            public string lt_TheName
            {
                get
                {
                    return "lt_TheName";
                }
            }
        }
    
        /// <summary>
        /// 
        /// </summary>
        public ZJL.LabLib.DataColumnNameInfo.LAB.UTB_ZJL_LAB_ZL BNI
        {
            get
            {
                return ZJL.LabLib.DataColumnNameInfo.LAB.UTB_ZJL_LAB_ZL.instance;
            }
        }
    
        /// <summary>
        /// 
        /// </summary>
        /// <returns></returns>
        protected string CurPageNameGet()
        {
            return "ZL.aspx";
        }
    
        // 搜索的前缀 //
        protected string preUrl = null;
    
    
        // 排序的URL //
        protected string orderUrl = null;
    
        /// <summary>
        /// 新闻代号
        /// </summary>
        protected const string CTheCode = "专利";
    
        /// <summary>
        /// 
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btn_Search_Click(object sender, EventArgs e)
        {
    
        }
    
        /// <summary>
        /// 
        /// </summary>
        protected NewsSortBasicItem newsSortItem
                  =
                  null;
    
    
        /// <summary>
        /// 当前新闻栏目ID
        /// </summary>
        public long curNewSortId = 0;
    
        /// <summary>
        /// 显示图片 
        /// </summary>
        public string newsSortHeadImg = "";
    
        /// <summary>
        /// 内容区导航
        /// </summary>
        public string newsSortNav = "";
    
        /// <summary>
        /// 
        /// </summary>
        protected string CurPageTitle = "";
    
    
        /// <summary>
        /// 获得专利
        /// </summary>
        /// <param name="xdbHelper"></param>
        /// <returns></returns>
        protected string ToZL(DBHelper xdbHelper)
        {
    
            // 排序方式 //
            OrderInfo orderI = OrderInfoCreate();
    
    
            string kw = Request.QueryString["kw"];
    
            if (kw != null)
            {
                kw = kw.Trim();
                kw = Server.UrlDecode(kw);
            }
            
            txt_Search.Text = kw;
    
            int pageIndex = HttpContextSlowXFunctions.GetIntParameter("pageindex", 1);
    
            if (pageIndex >= 1)
                pageIndex = pageIndex - 1;
    
            preUrl = CurPageNameGet() + "?";
    
            if (orderI.IsOrder())
            {
                preUrl += "order=" + orderI.ToOrderUrlParam() + "&";
            }
    
            preUrl += "kw=";
            
            orderUrl = CurPageNameGet()+"?";
    
            if (kw != null && kw.Length > 0)
            {
                orderUrl += "kw=" + Server.UrlEncode(kw) + "&";
            }
    
            if (pageIndex != 0)
            {
                orderUrl += "pageindex=" + (pageIndex + 1).ToString() + "&";
            }
    
            orderUrl += "order=";
    
    
            // StringBuilder theResult = new StringBuilder();
    
            bool bIsCreate = true;
    
            if (xdbHelper == null)
            {
                xdbHelper = SlowX.DAL.Helpers.DBHelper.CreateDBHelper();
            }
            else
            {
                // 没有打开链接 //
                bIsCreate = xdbHelper.IsNotOpen();
            }
    
            try
            {
                if (bIsCreate)
                    xdbHelper.OpenDBHelper();
    
                ZJL.LabLib.Business.LAB.UTB_ZJL_LAB_ZL
                    bll
                    =
                    ZJL.LabLib.Business.LAB.UTB_ZJL_LAB_ZL.instance;
    
                ZJL.LabLib.Entity.LAB.UTB_ZJL_LAB_ZL
                    entity
                    =
                    new ZJL.LabLib.Entity.LAB.UTB_ZJL_LAB_ZL();
    
                LiteralSetOrderTitle(title_FMR, orderI, entity._FMR._Name);
                LiteralSetOrderTitle(title_SQRQ, orderI, entity._SQRQ._Name);
                LiteralSetOrderTitle(title_TheCode, orderI, entity._TheCode._Name);
                LiteralSetOrderTitle(title_TheName, orderI, entity._TheName._Name);
    
    
                IOrderByDriver iorder = entity;
                IQueryDriver iq = entity;
    
                if (orderI.IsOrder())
                {
                    iorder.AddIOrderByItemWithEntityFieldInfoName
                        (
                            orderI.DataColumnName,
                            orderI.DataColumnOrder
                        );
                }
    
                iorder.AddOrderDesc(entity._ItemSeq);
    
                if (!orderI.DataColumnNameIsOrder(entity._SQRQ._Name))
                {
                    iorder.AddOrderDesc(entity._SQRQ);
                }
    
                if (!orderI.DataColumnNameIsOrder(entity._TheName._Name))
                {
                    iorder.AddOrderAsc(entity._TheName);
                }
    
                iorder.AddOrderAsc(entity._ID);
    
                iq.InitIQueryItemWithShow();
    
                if (kw != null && kw.Length > 0)
                {
                    string searchName
                        =
                        entity._TheName._Name
                        + "|" + entity._TheCode._Name;
    
                    iq.AddIQueryItemAdvSearch
                        (
                            searchName, 
                            kw.ToLower()
                        );
                }
    
    
    
                int pageSize = detailAspNetPager.PageSize;
                int iRowCount = -1;
    
                if (pageSize <= 0)
                {
                    pageSize = int.MaxValue;
                    detailAspNetPager.PageSize = pageSize;
                    pageIndex = 0;
                    detailAspNetPager.CurrentPageIndex = 1;
                }
    
                List<BaseModel>
                    theList
                    =
                    bll.PageListBaseModel
                    (
                        pageIndex,
                        pageSize,
                        ref iRowCount,
                        entity,
                        xdbHelper
                    );
    
    
                SetAspNetPagerPageMessage
                    (detailAspNetPager, pageIndex, iRowCount);
    
                rp_List.DataSource = theList;
                rp_List.DataBind();
    
    
                ZJL.LabLib.Model.LAB.UTB_ZJL_LAB_ZL
                    model = null;
    
                RepeaterItem rpItem = null;
                int iCount = theList.Count;
                CtrlIndex CI = CtrlIndex.CI;
                Literal lt = null;
    
                int idx = pageIndex * pageSize;
    
                string strTheName = null;
    
                for (int i = 0; i < iCount; ++i)
                {
                    rpItem = rp_List.Items[i];
                    model = theList[i] as ZJL.LabLib.Model.LAB.UTB_ZJL_LAB_ZL;
    
                    lt = rpItem.FindControl(CI.lt_Seq) as Literal;
                    ++idx;
                    lt.Text = idx.ToString();
    
                    lt = rpItem.FindControl(CI.lt_TheName) as Literal;
    
                    strTheName = ToHighLightStr(model.TheName, kw);
    
                    lt.Text = LiteralGetTheName(strTheName, model.LinkUrl);
                }
    
    
                //theResult.AppendLine("<table class=\"DL\">");
                //theResult.AppendLine("<tr class=\"DL\">");
                //theResult.Append("<th class=\"DL\" style=\"width:40px;\">序号</th>");
                //theResult.Append("<th class=\"DL\">专利名称</th>");
                //theResult.Append("<th class=\"DL\">专利号</th>");
                //theResult.Append("<th class=\"DL\" style=\"min-width:95px;\">授权日期</th>");
                //theResult.Append("<th class=\"DL\" style=\"min-width:85px;\">发明人</th>");
                //theResult.AppendLine("</tr>");
    
                //bool bClassFlag = true;
                //string className = null;
                //int idx = pageIndex * pageSize;
                //foreach (ZJL.LabLib.Model.LAB.UTB_ZJL_LAB_ZL
                //    model in theList)
                //{
                //    bClassFlag = !bClassFlag;
    
                //    if (bClassFlag)
                //        className = "DL";
                //    else
                //        className = "DLA";
    
                //    ++idx;
                //    theResult.AppendLine("<tr class=\"DL\">");
                //    theResult.Append("<td class=\"" + className + "\">" + idx.ToString() + "</td>");
                //    theResult.Append("<td class=\"" + className + "\">" + ToHighLightStr(model.TheName, kw) + "</td>");
                //    theResult.Append("<td class=\"" + className + "\">" + ToHighLightStr(model.TheCode, kw) + "</td>");
                //    theResult.Append("<td class=\"" + className + "\">" + model.SQRQ + "</td>");
                //    theResult.Append("<td class=\"" + className + "\">" + model.FMR + "</td>");
                //    theResult.AppendLine("</tr>");
                //}
    
                //theResult.AppendLine("</table>");
    
    
                if (bIsCreate)
                    xdbHelper.EndDBHelper();
    
            }
            catch (Exception err)
            {
                if (bIsCreate)
                    xdbHelper.TranDBHelper();
    
                throw err;
            }
            finally
            {
                if (bIsCreate)
                    xdbHelper.FinallyDBHelper();
            }
    
            // return theResult.ToString();
            return "";
        }
    
    
        /// <summary>
        /// 绑定控件
        /// </summary>
        /// <param name="xdbHelper"></param>
        protected string DataBindTheControls
            (
                DBHelper xdbHelper
            )
        {
    
    
            bool bIsCreate = true;
    
            if (xdbHelper == null)
            {
                xdbHelper = SlowX.DAL.Helpers.DBHelper.CreateDBHelper();
            }
            else
            {
                // 没有打开链接 //
                bIsCreate = xdbHelper.IsNotOpen();
            }
    
            try
            {
                if (bIsCreate)
                    xdbHelper.OpenDBHelper();
    
    
                NewsSortBasicItem mainNewsSort = null;
    
                WebSiteBLL wi = WebSiteBLL.instance;
    
    
    
    
                string theCode
                    =
                    CTheCode;
    
                if (theCode.Length != 0)
                {
                    newsSortItem = wi.GetNewsSortBasicItem
                        (
                            theCode,
                            xdbHelper
                        );
                }
    
    
    
    
    
                if (newsSortItem == null)
                {
                    if (bIsCreate)
                        xdbHelper.EndDBHelper();
    
                    return "没有获得" + wi.GetNewsTitle() + "栏目";
                }
    
                // 
                curNewSortId = newsSortItem.ID;
    
                // 
                List<NewsSortBasicItem> listNewsSort
                    =
                    newsSortItem._ListNewsSortBasicItem;
    
                // 
                mainNewsSort
                    =
                    newsSortItem;
    
                if (listNewsSort == null || listNewsSort.Count == 0)
                {
                    if (newsSortItem._parent == null)
                    {
                        // 顶层 //
                        listNewsSort =
                            wi.GetListNewsSortBasicItem(xdbHelper);
                        // new List<NewsSortBasicItem>();
    
                    }
                    else
                    {
    
                        mainNewsSort = newsSortItem._parent;
    
                        listNewsSort
                            =
                            mainNewsSort._ListNewsSortBasicItem;
    
                    }
                }
    
                // 绑定左边导航 //
                rp_Nav.DataSource = listNewsSort;
                rp_Nav.DataBind();
    
    
                // 构建内容导航 //
                StringBuilder sbNav = new StringBuilder();
    
                NewsSortBasicItem itemNav = newsSortItem;
                string strNav = "";
    
                while (itemNav != null)
                {
                    strNav = HtmlSlowXFunctions.GetHref
                        (
                            itemNav.ListUrl,
                            itemNav.TheName,
                            itemNav.TheName,
                            "",
                            "NewsHrefSTYLE3"
                        );
    
                    sbNav.Insert(0, "&nbsp;&nbsp;&gt;&nbsp;&nbsp;" + strNav);
    
                    itemNav = itemNav._parent;
                }
    
    
    
                newsSortNav = sbNav.ToString();
    
    
    
    
                SetWebPageTitle(newsSortItem.TheName);
    
                CurPageTitle = newsSortItem.TheName;
    
    
                lt_TheContent.Text = ToZL(xdbHelper);
    
                if (bIsCreate)
                    xdbHelper.EndDBHelper();
    
            }
            catch (Exception err)
            {
                if (bIsCreate)
                    xdbHelper.TranDBHelper();
    
                return "系统异常:" + err.Message;
            }
            finally
            {
                if (bIsCreate)
                    xdbHelper.FinallyDBHelper();
            }
    
            return "";
        }
    
    
        /// <summary>
        /// 页面加载
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Page_Load(object sender, EventArgs e)
        {
    
            if (!this.IsPostBack)
            {
                // 数据绑定 //
                string str = DataBindTheControls(null);
    
                if (str != null && str.Length > 0)
                {
                    Response.Redirect(strPhyPath + "/error.aspx?msg=" + Server.UrlEncode(str));
                }
    
            }
        }
    }
    
    
    
  • using System;
    
    namespace ZJL.LabLib.Classes
    {
        /// <summary>
        /// 排序信息
        /// </summary>
        [Serializable]
        public class OrderInfo
        {
            /// <summary>
            /// 
            /// </summary>
            public OrderInfo()
            {
    
            }
    
    
            #region DataColumnName ~ 排序字段
    
            /// <summary>
            /// DataColumnName ~ 排序字段
            /// </summary>
            protected string m_DataColumnName = null;
    
            /// <summary>
            /// DataColumnName ~ 排序字段
            /// </summary>
            public string DataColumnName
            {
                get
                {
                    return m_DataColumnName;
                }
                set
                {
                    m_DataColumnName = value;
                }
            }
    
            #endregion DataColumnName ~ 排序字段
    
    
            #region DataColumnOrder ~ 排序方式
    
            /// <summary>
            /// DataColumnOrder ~ 排序方式
            /// </summary>
            protected SlowX.Core.Enums.OrderBy.EmOrderBy m_DataColumnOrder 
                =
                SlowX.Core.Enums.OrderBy.EmOrderBy.ASC;
    
            /// <summary>
            /// DataColumnOrder ~ 排序方式
            /// </summary>
            public SlowX.Core.Enums.OrderBy.EmOrderBy DataColumnOrder
            {
                get
                {
                    return m_DataColumnOrder;
                }
                set
                {
                    m_DataColumnOrder = value;
                }
            }
    
            #endregion DataColumnOrder ~ 排序方式
    
            /// <summary>
            /// 
            /// </summary>
            /// <returns></returns>
            public SlowX.Core.Enums.OrderBy.EmOrderBy DataColumnOrderConvert()
            {
                if (DataColumnOrder == SlowX.Core.Enums.OrderBy.EmOrderBy.ASC)
                    return SlowX.Core.Enums.OrderBy.EmOrderBy.DESC;
                else
                    return SlowX.Core.Enums.OrderBy.EmOrderBy.ASC;
            }
    
            /// <summary>
            /// 
            /// </summary>
            /// <param name="str"></param>
            public void InitClass(string str)
            {
                if (str == null || str.Length == 0)
                    return;
    
                str = str.Trim();
    
                if (str.Length == 0)
                    return;
    
                str = str.ToLower();
    
                int idx = str.IndexOf('.');
    
                if (idx == -1)
                {
                    DataColumnName = str;
                    return;
                }
    
                DataColumnName = str.Substring(0, idx);
    
                str = str.Substring(idx + 1);
    
                if (str == "desc")
                    DataColumnOrder = SlowX.Core.Enums.OrderBy.EmOrderBy.DESC;
                else
                    DataColumnOrder = SlowX.Core.Enums.OrderBy.EmOrderBy.ASC;
            }
    
            /// <summary>
            /// 
            /// </summary>
            /// <param name="theName"></param>
            /// <returns></returns>
            public bool DataColumnNameIsOrder(string theName)
            {
                if (theName == null)
                    return false;
    
                if (theName.Trim().ToLower() == DataColumnName)
                    return true;
    
                return false;
            }
    
            /// <summary>
            /// 
            /// </summary>
            /// <returns></returns>
            public bool IsOrder()
            {
                if (DataColumnName == null)
                    return false;
    
                if (DataColumnName.Length == 0)
                    return false;
    
                if (DataColumnName.Trim().Length == 0)
                    return false;
    
                return true;
            }
    
            /// <summary>
            /// 
            /// </summary>
            /// <returns></returns>
            public string ToOrderUrlParam()
            {
                return DataColumnName.Trim().ToLower() + "." + DataColumnOrder.ToString().ToLower();
            }
        }
    }
    
    
  • 
    using SlowX.WebSite.Pages;
    using System.Text;
    using ZJL.LabLib.Classes;
    using System.Web.UI.WebControls;
    
    /// <summary>
    ///WebPageBase 的摘要说明
    /// </summary>
    public class WebPageBase
        :
        PageBase
    {
    
        /// <summary>
        /// 
        /// </summary>
        public DataBindHelper DH
        {
            get
            {
                return DataBindHelper.instance;
            }
        }
    
        /// <summary>
        /// 
        /// </summary>
        /// <param name="idx"></param>
        /// <returns></returns>
        protected string DataBindGetTdClass(int idx)
        {
            int mod = idx % 2;
    
            if (mod == 0)
                return "DLA";
            else
                return "DL";
        }
    
    
        /// <summary>
        /// 
        /// </summary>
        public NameInfo NI
        {
            get
            {
                return NameInfo.instance;
            }
        }
    
        /// <summary>
        /// 创建排序信息
        /// </summary>
        /// <returns></returns>
        protected OrderInfo OrderInfoCreate()
        {
            string order = Request.QueryString["order"];
    
            OrderInfo theResult = new OrderInfo();
    
            theResult.InitClass(order);
    
            return theResult;
        }
    
        /// <summary>
        /// 
        /// </summary>
        /// <param name="theText"></param>
        /// <param name="dataColumnName"></param>
        /// <param name="em"></param>
        /// <returns></returns>
        protected string GetSpan4Order
            (
                string theText,
                string dataColumnName,
                SlowX.Core.Enums.OrderBy.EmOrderBy em,
                bool fillChar
            )
        {
            if (fillChar)
            {
                if (em == SlowX.Core.Enums.OrderBy.EmOrderBy.ASC)
                    theText += "↑";
                else
                    theText += "↓";
            }
    
            string jsOnclick = "OnJsOrderByClick('" + dataColumnName.Trim().ToLower() + "','" + em.ToString().ToLower() + "');";
    
            return "<span style=\"cursor:pointer;\" onclick=\"" + jsOnclick + "\">" + theText + "</span>";
        }
    
        /// <summary>
        /// 
        /// </summary>
        /// <param name="lt"></param>
        /// <param name="orderI"></param>
        /// <param name="dataColumnName"></param>
        protected void LiteralSetOrderTitle
            (
                Literal lt,
                OrderInfo orderI,
                string dataColumnName
            )
        {
            if (lt == null)
                return;
    
            if (!orderI.DataColumnNameIsOrder(dataColumnName))
            {
                lt.Text = GetSpan4Order(lt.Text, dataColumnName, SlowX.Core.Enums.OrderBy.EmOrderBy.ASC, false);
                return;
            }
    
            lt.Text = GetSpan4Order(lt.Text, dataColumnName, orderI.DataColumnOrderConvert(), true);
        }
    
        /// <summary>
        /// 转换"成&quot;
        /// 如:canoe"best,结果为canoe&quot;best
        /// </summary>
        /// <param name="obj">传入的字符串(canoe"best)</param>
        /// <returns>输出的结果,如(canoe&quot;best)</returns>
        public string StringConvertQuot(string obj)
        {
            if (obj == null)
                return string.Empty;
    
            return obj.Replace("\"", "&quot;");
        }
    
    
        /// <summary>
        /// 
        /// </summary>
        /// <param name="theName"></param>
        /// <param name="linkUrl"></param>
        /// <returns></returns>
        protected string LiteralGetTheName(string theName, string linkUrl)
        {
            if (linkUrl == null || linkUrl.Length == 0)
                return theName;
    
            linkUrl = linkUrl.Trim();
    
            if (linkUrl.Length == 0)
                return theName;
    
            if (linkUrl.StartsWith("~/"))
                linkUrl = strPhyPath + linkUrl.Substring(1);
    
            return "<a href=\"" + StringConvertQuot(linkUrl) + "\" title=\"原文链接\" class=\"DefaultHref\" target=\"_blank\">" + theName + "</a>";
        }
    
        /// <summary>
        /// 
        /// </summary>
        /// <param name="idx"></param>
        /// <param name="str"></param>
        /// <returns></returns>
        protected string DataBindPrintNoFirst(int idx, string str)
        {
            if (idx == 0)
                return "";
    
            return str;
        }
    
    
        /// <summary>
        /// 设置分页控件的页面信息
        /// </summary>
        /// <param name="wuqiWebdiyerAspNetPager"></param>
        /// <param name="iPageIndex"></param>
        /// <param name="iRowCount"></param>
        public void SetAspNetPagerPageMessage
            (
                Wuqi.Webdiyer.AspNetPager wuqiWebdiyerAspNetPager,
                int iPageIndex,
                int iRowCount
            )
        {
            int iPageSize = wuqiWebdiyerAspNetPager.PageSize;
    
            wuqiWebdiyerAspNetPager.RecordCount = iRowCount;
            wuqiWebdiyerAspNetPager.CurrentPageIndex = iPageIndex + 1;
    
        }
    
        /// <summary>
        /// 通过关键字高亮文本内容的算法 - ToHighLightStr
        /// </summary>
        /// <param name="str"></param>
        /// <param name="kw"></param>
        /// <returns></returns>
        protected string ToHighLightStr(string str, string kw)
        {
            if (str == null)
                return "";
    
            if (kw == null || kw.Length == 0)
                return str;
    
            string lowerStr = str.ToLower();
            string lowerKw = kw.ToLower();
    
            StringBuilder theResult = new StringBuilder();
            int idx = -1;
            string strPre = null;
            string strHL = null;
            string strPost = null;
            int kwLen = kw.Length;
    
            while (true)
            {
                idx = lowerStr.IndexOf(lowerKw);
    
                if (idx == -1)
                {
                    // 没有找到记录 //
                    theResult.Append(str);
                    break;
                }
    
                strPre = str.Substring(0, idx);
                strHL = str.Substring(idx, kwLen);
                strPost = str.Substring(idx + kwLen);
    
                theResult.Append(strPre);
                theResult.Append("<font color=\"red\">" + strHL + "</font>");
    
                str = strPost;
                lowerStr = lowerStr.Substring(idx + kwLen);
            }
    
            return theResult.ToString();
        }
    
        public WebPageBase()
        {
            //
            //TODO: 在此处添加构造函数逻辑
            //
        }
    }
    
    

上一条:

下一条:


 
 

相关评论

评论加载中……
 

发表评论

类型:
内容:
  (Alt+Enter)
 
  ┈全部┈  
 
(显示默认分类)