接下来,我把删除和批删写在一起,接着上一个界面继续补充
先说一下单删,先在DAL层中写删除方法
然后在BLL层中写方法
在前台的操作中去添加一个删除按钮
代码如下
前台删除: <ItemTemplate>
<asp:Button ID="Button1" runat="server" Text="删除" CommandName="shanchu"CommandArgument='<%#Eval("ID")%>' OnClientClick="return confirm('您确定要删除吗?')"/>
</ItemTemplate>
点击前台gridview属性,双击这个事件,进入后台
先运行一下前台界面,看看有没有报错,没有报错进行下一步
报错的话,直接把这句话相似的话即可
下面我们直接回到后台当中,直接获取到相对应的命名和对象,然后根据相对应的id进行删除
给大家关于删除的代码
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
string q = e.CommandName; //获取前台的删除按钮的命名
int id = Convert.ToInt32(e.CommandArgument); //获取命令对象
if (q == "shanchu") //判断Q的值
{
int k = z.Delete(id); //获取到相对应的值进行删除
if (k > 0)
{
Response.Write("<script>location.href='/SHOW.aspx'</script>");
}
else
{
Response.Write("<script>alert('删除失败')</script>");
}
}
下面是批删,先在gridview上面设置一个盒子,设置两个按钮,一个添加,一个批量删除
先说添加,有好多种跳转方法,我就说一种我常用的一种,双击按钮进入后台
然后就是批删
先到DAL层写一些关于批删的方法
再到BLL层
然后回到前台,添加这个控件,起个名字
将字段转换一下
转换之后的效果
绑定需要绑定的值
双击批量删除按钮进入后台
获取对象
进行判断
看一下效果
删除成功
现在就给大家关于批删的代码
protected void Button2_Click(object sender, EventArgs e) //批量删除
{
string str = "";
//获取每一行的对象
foreach (GridViewRow item in GridView1.Rows)
{
//获取每一行的复选框对象
CheckBox ck = item.FindControl("CheckBox1") as CheckBox;
if (ck.Checked==true)
{
//获取每一行的值
str+=","+Convert.ToInt32(GridView1.DataKeys[item.RowIndex].Value);
}
}
if (str != "")
{
str = str.Substring(1); //截取每一个要删除吧对象
int i = z.PDAL(str);
if (i > 0)
{
Response.Write("<script>alert('删除成功');location.href='/SHOW.aspx'</script>");
}
else
{
Response.Write("<script>alert('删除失败')</script>");
return;
}
}
else
{
Response.Write("<script>alert('对不起请选择你要删除的编号')</script>");
return;
}
}