最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

asp.net aspnetpager分頁(yè)統(tǒng)計(jì)時(shí)與實(shí)際不符的解決辦法

 更新時(shí)間:2008年11月27日 14:21:34   作者:  
最近分頁(yè)方面根據(jù)實(shí)際需要修改了一些函數(shù)
基本函數(shù)如下:
復(fù)制代碼 代碼如下:

/// <summary>
/// 需要分頁(yè)時(shí)使用,根據(jù)參數(shù)和ConditionExpress獲取DataTable
/// </summary>
/// <param name="_tableName">表名</param>
/// <param name="_fieldNames">字段名集合,用逗號(hào)分開(kāi)</param>
/// <param name="_OrderColumn">排序字段,用于統(tǒng)計(jì)有多少條記錄</param>
/// <param name="IsDesc">是否倒序</param>
/// <param name="_indexColumn">自增字段名</param>
/// <param name="_currentPage">當(dāng)前頁(yè)</param>
/// <param name="pageSize">頁(yè)大小</param>
/// <param name="_rowsCount">總記錄數(shù)</param>
/// <returns>獲取到的DataTable</returns>
public static DataTable GetDataTable(string _tableName, string _fieldNames, string _OrderColumn, bool IsDesc, string _indexColumn, int _currentPage, int pageSize, string conditionExpress, ref int _rowsCount)
{
using (SqlConnection conn = new SqlConnection(connectionString))
{
string whereStr = " where 1=1 ";
string sort = IsDesc ? " desc" : " asc";

string sqlStr = " from " + _tableName;
//排序字段
string orderStr = " order by " + _OrderColumn + sort;
if (_OrderColumn != _indexColumn)
orderStr += "," + _indexColumn + sort;
if (conditionExpress != string.Empty)
{
whereStr += conditionExpress;
}
sqlStr += whereStr;

//取得符合條件的數(shù)據(jù)總數(shù)
SqlCommand cmd = new SqlCommand("select count(" + _OrderColumn + ") " + sqlStr, conn);
conn.Open();
try
{
_rowsCount = (int)cmd.ExecuteScalar();
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}

if (_currentPage > _rowsCount) _currentPage = _rowsCount;

if (_currentPage > 1)
{
if (IsDesc)
sqlStr += " and " + _OrderColumn + " < (select MIN(" + _OrderColumn + ") from ";
else
sqlStr += " and " + _OrderColumn + " > (select MAX(" + _OrderColumn + ") from ";
sqlStr += "(select top " + (pageSize * (_currentPage - 1)) + " " + _OrderColumn + " from " + _tableName + whereStr + orderStr + ") as t)";
}
sqlStr = "select top " + pageSize + " " + _fieldNames + sqlStr + orderStr;

try
{
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter(sqlStr, conn);
da.Fill(ds);
return ds.Tables[0];
}
catch (Exception EX)
{
throw new Exception(EX.Message);
}
}
}

調(diào)用如下:
復(fù)制代碼 代碼如下:

private void bind()
{
int rowCount = 1;
string wherestr = string.Empty;
//設(shè)置分頁(yè)
anPager.AlwaysShow = true;
anPager.PageSize = 10;
this.rptdictionary.DataSource = GetDataTable(
"dictionary_Toysgogo_",
"[id_dictionary_],[namecn_dictionary_],[nameen_dictionary_],[point_dictionary_]",
"[id_dictionary_]",
true,
"[id_dictionary_]",
this.anPager.CurrentPageIndex,
anPager.PageSize,
wherestr,
ref rowCount
);
this.anPager.RecordCount = rowCount;
this.rptdictionary.DataBind();
}

復(fù)制代碼 代碼如下:

//分頁(yè)切換
protected void anPager_PageChanging(object src, Wuqi.Webdiyer.PageChangingEventArgs e)
{
this.anPager.CurrentPageIndex = e.NewPageIndex;
this.tbxType.Text = this.tbxType.Text;
bind();
}

之前一直在頁(yè)數(shù)方面直接用數(shù)字寫進(jìn)去,沒(méi)有寫成anPager.PageSize=10;的形式,在老湯的提醒下,做了修改,也解決了一直困擾我的問(wèn)題。

相關(guān)文章

  • 用Html5與Asp.net MVC上傳多個(gè)文件的實(shí)現(xiàn)代碼

    用Html5與Asp.net MVC上傳多個(gè)文件的實(shí)現(xiàn)代碼

    Html 5 的有一些File API,對(duì)Form表單增強(qiáng)的特性,讓我們輕松支持多文件上傳,看下面的Html片斷代碼
    2012-08-08
  • .net中自定義錯(cuò)誤頁(yè)面的實(shí)現(xiàn)方法

    .net中自定義錯(cuò)誤頁(yè)面的實(shí)現(xiàn)方法

    這篇文章主要給大家介紹了關(guān)于.net中自定義錯(cuò)誤頁(yè)面實(shí)現(xiàn)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-06-06
  • asp.net下加密Config的方法

    asp.net下加密Config的方法

    本文說(shuō)明使用RSAProtectedConfigurationProvidert和計(jì)算機(jī)級(jí)別的密鑰容器進(jìn)行加密的步驟。
    2011-02-02
  • .NET9?AOT部署方案詳解

    .NET9?AOT部署方案詳解

    文章詳細(xì)介紹了.NET?AOT(Ahead-of-Time)和JIT(Just-in-Time)兩種編譯和部署方式的對(duì)比,包括它們的優(yōu)點(diǎn)和缺點(diǎn),AOT適合快速啟動(dòng)、內(nèi)存占用低、性能穩(wěn)定的場(chǎng)景,這篇文章主要介紹了.NET9?AOT部署,需要的朋友可以參考下
    2025-01-01
  • asp net core 2.1中如何使用jwt(從原理到精通)

    asp net core 2.1中如何使用jwt(從原理到精通)

    這篇文章主要給大家介紹了關(guān)于asp net core 2.1中如何使用jwt(從原理到精通)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧
    2018-11-11
  • ASP.NET?Core使用MiniProfiler分析應(yīng)用

    ASP.NET?Core使用MiniProfiler分析應(yīng)用

    這篇文章介紹了ASP.NET?Core使用MiniProfiler分析應(yīng)用的方法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-02-02
  • VS2015自帶LocalDB數(shù)據(jù)庫(kù)用法詳解

    VS2015自帶LocalDB數(shù)據(jù)庫(kù)用法詳解

    這篇文章主要為大家詳細(xì)介紹了VS2015自帶LocalDB數(shù)據(jù)庫(kù)的用法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • .NET 下運(yùn)用策略模式(組合行為和實(shí)體的一種模式)

    .NET 下運(yùn)用策略模式(組合行為和實(shí)體的一種模式)

    我簡(jiǎn)單的理解策略模式就是把行為(方法)單獨(dú)的抽象出來(lái),并采用組合(Has-a)的方式,來(lái)組合行為和實(shí)體的一種模式比如,.NET中對(duì)數(shù)組排序的Sort的方法就是一個(gè)策略模式的實(shí)現(xiàn)模板
    2012-12-12
  • ASP.NET Core 3.0遷移的完美避坑指南

    ASP.NET Core 3.0遷移的完美避坑指南

    這篇文章主要給大家介紹了關(guān)于ASP.NET Core 3.0遷移的完美避坑指南,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用ASP.NET Core 3.0具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • .net壓縮功能實(shí)現(xiàn)方法

    .net壓縮功能實(shí)現(xiàn)方法

    這篇文章主要介紹了.net壓縮功能實(shí)現(xiàn)方法,需要的朋友可以參考下
    2014-02-02

最新評(píng)論

库车县| 台南县| 黎城县| 聂拉木县| 元谋县| 无锡市| 色达县| 临安市| 明水县| 永宁县| 嘉兴市| 绍兴市| 耒阳市| 安顺市| 安康市| 武乡县| 时尚| 保定市| 和田县| 米泉市| 白城市| 肥乡县| 乌兰县| 罗平县| 洱源县| 博罗县| 苏州市| 陈巴尔虎旗| 长乐市| 当涂县| 江源县| 保山市| 明光市| 阿合奇县| 阿图什市| 德庆县| 曲阳县| 大邑县| 即墨市| 正定县| 襄樊市|