时间:2016-02-15 21:54 来源: 我爱IT技术网 作者:佚名
欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【.NET 纯分页代码实例】,下面是详细的讲解!
.NET 纯分页代码实例
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using InfoSoftGlobal;
using System.Data;
using DCIS.Persistence;
using DCIS.JDXT.Data;
using System.IO;
public partial class COMMON_FirstPage : System.Web.UI.Page
{
DCIS.Web.WebUserInfo CurrentUser=new DCIS.Web.WebUserInfo();
protected void Page_Load(object sender, EventArgs e)
{
Pager pager=new Pager();
CurrentUser=(DCIS.Web.WebUserInfo)Session["CurrentUser"];
if (!IsPostBack)
{
BindDoc();
object o=DBUtil.ExecuteScalarAt("SQLCOM", "select count(1) from dbo.EMS_PTS_HEAD where DECLARE_CODE='" + CurrentUser.Extends["AGENT_CODE"].ToString() + "' and datediff(day,end_Date,getdate()) between 0 and 7");
pager.totalRecords=o==null ? 0 : Convert.ToInt32(o);//总记录数
pager.pageSize=5;//页大小
pager.pageIndex=0;//当前页码
if (pager.totalRecords==0)
{
pager.totalPages=0;
}
else
{
pager.totalPages=pager.totalRecords / pager.pageSize + (pager.totalRecords % pager.pageSize==0 ? 0 : 1)-1;//总页数
}
ViewState["pager"]=pager;
litChart.Text=CreatChart();
bindZC(pager.pageIndex, pager.pageSize);
viewLB(pager);
}
}
private void bindZC(int pageIndex,int pageSize) {
string strSQL=@"select EMS_NO,TRADE_NAME,datediff(day,end_Date,getdate()) DAYS from dbo.EMS_PTS_HEAD where DECLARE_CODE='" + CurrentUser.Extends["AGENT_CODE"].ToString() + "' and datediff(day,end_Date,getdate()) between 0 and 7";
PageSpliter pageSpliter=new PageSpliter(strSQL, "", "SQLCOM");
pageSpliter.PageSize=pageSize;
strSQL=pageSpliter.GetPageSQL(pageIndex);
strSQL +=" order by days ";
DataTable dt=DBUtil.FillAt("SQLCOM", strSQL);
repZC.DataSource=dt;
repZC.DataBind();
}
public void lbPage_Command(object sender, CommandEventArgs e)
{
Pager pager=ViewState["pager"] as Pager ;
string para=e.CommandArgument.ToString();
//首页
if (para=="F") {
pager.pageIndex=0;
}
//前一页
if (para=="P")
{
pager.pageIndex=pager.pageIndex-1;
}
//下一页
if (para=="N")
{
pager.pageIndex=pager.pageIndex+1;
}
//尾页
if (para=="L")
{
pager.pageIndex=pager.totalPages;
}
bindZC(pager.pageIndex, pager.pageSize);
viewLB(pager);
ViewState["pager"]=pager;
}
private void viewLB(Pager pager)
{
lbFirst.Enabled=true;
lbLast.Enabled=true;
lbPre.Enabled=true;
lbNext.Enabled=true;
if (pager.totalPages==0)
{
lbFirst.Enabled=false;
lbLast.Enabled=false;
lbPre.Enabled=false;
lbNext.Enabled=false;
}
if (pager.pageIndex==0)
{
lbFirst.Enabled=false;
lbPre.Enabled=false;
}
if (pager.totalPages==pager.pageIndex)
{
lbLast.Enabled=false;
lbNext.Enabled=false;
}
lbTip.Text=pager.pageIndex + 1 + "/" + (pager.totalPages + 1) + "页";
}
/// <summary>
/// 绑定文档
/// </summary>
private void BindDoc() {
DataTable dt=DBUtil.FillAt("SQLCOM"," select * from COM_FileUpload WHERE DESCRIBE='Index'");
repMD.DataSource=dt;
repMD.DataBind();
}
public void DownFile_Command(object sender, CommandEventArgs e)
{
string para=e.CommandArgument.ToString();
string serverfilpath=Server.MapPath("../" + para.Split('$')[0]);
if (!File.Exists(serverfilpath))
{
Page.ClientScript.RegisterStartupScript(GetType(), "", "<script>alert('你要下载的文件已经不存在!');</script>");
return;
}
ToDownload(serverfilpath,para.Split('$')[1]);
}
public static void ToDownload(string serverfilpath, string filename)
{
FileStream fileStream=new FileStream(serverfilpath, FileMode.Open);
long fileSize=fileStream.Length;
HttpContext.Current.Response.ContentType="application/octet-stream";
HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment; filename=\"" + UTF_FileName(filename) + "\";");
////attachment --- 作为附件下载
////inline --- 在线打开
HttpContext.Current.Response.AddHeader("Content-Length", fileSize.ToString());
byte[] fileBuffer=new byte[fileSize];
fileStream.Read(fileBuffer, 0, (int)fileSize);
HttpContext.Current.Response.BinaryWrite(fileBuffer);
fileStream.Close();
HttpContext.Current.Response.End();
}
private static string UTF_FileName(string filename)
{
return HttpUtility.UrlEncode(filename, System.Text.Encoding.UTF8);
}
}
关于.NET 纯分页代码实例的用户互动如下:
相关问题:
答: >>详细
相关问题:
答: >>详细
相关问题:
答: >>详细
- 【asp】asp.net url重写浅谈-net-url重写
- 【创建】ASP.NET Web API教程 创建域模型的方法详
- 【页面打印】关于ASP.NET页面打印技术的常用方法
- 【MVC5】MVC 5 第一章 创建MVC 5 web应用程序-net
- 【服务器】asp.net页面状态管理cookie和服务器状
- 如何取消.net后台线程的执行
- 【asp】asp.net 分页链接方法-net-分页链接
- 【AS】ASP.NET设计网络硬盘之文件夹实现-SP--PN-N
- 【采集】asp.net采集网页图片的具体方法-网页-图
- 【ajax】asp.net下ajax.ajaxMethod使用方法-ajaxM
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
