Datalist删除一条记录的解决方法

datalist不同gridView 用Findcontrol方法行不通。

现提出两种解决方案

第一个

设置DataList的DataKeyField=主键,Button的CommandName="Delete"
在DataList的ItemCommand的事件里面:
ItemCommand:
if (e.CommandName=="Delete")
{
int ID =(int)DataList.DataKeys[e.Item.Itemindex]
//int就是要删的主键,删除这条纪录就行了

     protected   void  DataList1_ItemCommand( object  source, DataListCommandEventArgs e)
    {
        
if  (e.CommandName  ==   " Delete " )
        {
            
int  id  =  ( int )DataList1.DataKeys[e.Item.ItemIndex];
            Response.Write(id);
        }
    }

 

第二种方法

为删除的按钮绑定表中的一个字段.如ID,然后在给它一个链接,

并为它做个删除的链接,index.apx?del=<%# databinder.eval(container.dataitem,"id") %>

然后在index.aspx里代码,先判定是否有del的信息,然后就Request.QueryString("id")获取值,然后在进行SQL的删除语句就可以了。

————————————————————————

当然了第一种方法才是最好的方法!!!

你可能感兴趣的:(sql,object,delete,button)