asp.net之DataList的使用方法,及分页(存储过程创建),编辑,更新,删除 .
来源:互联网 发布:矢量图软件coreldraw 编辑:程序博客网 时间:2024/05/16 08:14
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Configuration;
using System.Data.SqlClient;
using System.Data;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
BindProduct("1");
}
private void BindProduct(string pageindex)
{
string str = ConfigurationManager.ConnectionStrings["studentCnn"].ConnectionString;
using (SqlConnection sqlCnn = new SqlConnection(str))
{
SqlDataAdapter da = new SqlDataAdapter("sp_Student_Select_by_Page_rowNumber", sqlCnn);
da.SelectCommand.Parameters.AddWithValue("@pageIndex", pageindex);
da.SelectCommand.Parameters.Add("@pageCount", SqlDbType.Int).Direction = ParameterDirection.Output;
da.SelectCommand.Parameters.AddWithValue("@pageSize", 2);
da.SelectCommand.CommandType = CommandType.StoredProcedure;
DataSet ds = new DataSet();
da.Fill(ds);
this.DataList1.DataSource = ds.Tables[0].DefaultView;
this.DataList1.DataBind();
this.HiddenField1.Value = pageindex;
this.HiddenField2.Value = da.SelectCommand.Parameters["@pageCount"].Value.ToString();
}
} //绑定数据 www.2cto.com
protected void DataList1_ItemCommand(object source, DataListCommandEventArgs e)
{
if(e.CommandName == "buy")
Response.Write(e.CommandArgument.ToString());
}
protected void DataList1_EditCommand(object source, DataListCommandEventArgs e)
{
this.DataList1.EditItemIndex = e.Item.ItemIndex;
this.BindProduct(this.HiddenField1.Value);
} //编辑
protected void DataList1_CancelCommand(object source, DataListCommandEventArgs e)
{
this.DataList1.EditItemIndex = -1;
this.BindProduct(this.HiddenField1.Value);
} //取消
protected void DataList1_UpdateCommand(object source, DataListCommandEventArgs e)
{
string name = (e.Item.FindControl("TextBox1") as TextBox).Text;
string sex = (e.Item.FindControl("TextBox2") as TextBox).Text;
string age = (e.Item.FindControl("TextBox3") as TextBox).Text;
string str = ConfigurationManager.ConnectionStrings["studentCnn"].ConnectionString;
using (SqlConnection sqlCnn = new SqlConnection(str))
{
SqlCommand sqlcmm = sqlCnn.CreateCommand();
sqlcmm.CommandText = "update student set sname=@sname,sex=@sex,age=@age where sid=@sid";
sqlcmm.Parameters.AddWithValue("@sname", name);
sqlcmm.Parameters.AddWithValue("@sex", sex);
sqlcmm.Parameters.AddWithValue("@age", age);
sqlcmm.Parameters.AddWithValue("@sid", e.CommandArgument);
sqlCnn.Open();
sqlcmm.ExecuteNonQuery();
}
this.DataList1.EditItemIndex = -1;
this.BindProduct(this.HiddenField1.Value);
} //更新
protected void DataList1_DeleteCommand(object source, DataListCommandEventArgs e)
{
string str = ConfigurationManager.ConnectionStrings["studentCnn"].ConnectionString;
using (SqlConnection sqlCnn = new SqlConnection(str))
{
SqlCommand sqlcmm = sqlCnn.CreateCommand();
sqlcmm.CommandText = "delete from student where sid=@sid";
sqlcmm.Parameters.AddWithValue("@sid", e.CommandArgument);
sqlCnn.Open();
sqlcmm.ExecuteNonQuery();
}
this.BindProduct(this.HiddenField1.Value);
} //删除
protected void Button6_Click(object sender, EventArgs e)
{
this.BindProduct("1");
} //首页
protected void Button9_Click(object sender, EventArgs e)
{
int count = Convert.ToInt32(this.HiddenField2.Value);
this.BindProduct(count.ToString());
} //尾页
protected void Button7_Click(object sender, EventArgs e)
{
int index = Convert.ToInt32(this.HiddenField1.Value);
if (index > 1)
index--;
this.BindProduct(index.ToString());
} //上一页
protected void Button8_Click(object sender, EventArgs e)
{
int index = Convert.ToInt32(this.HiddenField1.Value);
int count = Convert.ToInt32(this.HiddenField2.Value);
if (index < count)
index++;
this.BindProduct(index.ToString());
}
} //下一页
存储过程的创建:
ALTER PROCEDURE sp_Student_Select_by_Page_rowNumber
@pageSize int, --每页记录数量
@pageCount int output, --总页数
@pageIndex int --当前页索引号
AS
BEGIN
declare @totalRecords int
select @totalRecords = count(sid) from student
if(@totalRecords % @pageSize = 0)
set @pageCount = @totalRecords / @pageSize;
else
set @pageCount = @totalRecords / @pageSize +1;
with temp as (select row_number() over (order by sid) as id,* from student)
select * from temp where id between (@pageIndex -1)*@pageSize +1 and @pageIndex * @pageSize
return @totalRecords
end
- asp.net之DataList的使用方法,及分页(存储过程创建),编辑,更新,删除
- asp.net之DataList的使用方法,及分页(存储过程创建),编辑,更新,删除
- asp.net之DataList的使用方法,及分页(存储过程创建),编辑,更新,删除 .
- ASP.NET DataList 使用存储过程分页
- 模拟网易邮箱实现全选,全不的功能/使用DataList实现 加入购物车,编辑,删除,更新,取消功能。/试完成Datalist使用存储过程来分页
- DataList编辑、更新、取消、删除、分页
- DataList编辑、更新、取消、删除、分页
- DataList编辑、更新、取消、删除、分页
- DataList编辑、更新、取消、删除、分页
- DataList编辑、更新、取消、删除、分页
- ASP.NET之Datalist详解(分页)
- DataList编辑,更新,删除及模板的使用
- DataList编辑,更新,删除及模板的使用
- DataList编辑,更新,删除及模板的使用
- ASP.NET 分页存储过程 及 调用
- asp.net分页的SQL语句及存储过程
- GridView编辑,更新,取消,排序,全选及存储过程分页
- DataList编辑、更新、取消、删除、分页(分页控件AspNetPager.dll)
- 【shell】/dev/null 2>&1
- WordNet使用方法
- windows下的QT开发(学习一)
- 对于Android DEX文件详细说明
- Android 控件之ProgressBar进度条
- asp.net之DataList的使用方法,及分页(存储过程创建),编辑,更新,删除 .
- 面试题
- 黑马程序员 基础之运算符
- Qt中文显示
- oracle 11g 单实例打11.2.0.3.4 P14275605 PSU
- jsp知识点
- hdu 1003 之不断进步
- Java中堆和栈的区别
- 1模拟网易邮箱实现全选,全不的功能(服务端和客户端) 2 使用DataList实现 加入购物车,编辑,删除,更新,取消功能。要求连一个产品表。