在使用datalist的时候,我向项模板中添加了一个imageButton控件,并且希望在点击这个imageButton的时候通过获取到该项的键值并在数据库中查出相应的纪录,然后在数据库中执行插入操作,将查出的纪录插入到订单表中。就像这样
insert into shopingBag select bookname,sprice,nprice from products where id = @id 
但是不知道如何获取这个键值。
在asp.net1.1中如何获取datalist中选定项的主键值
谢谢大家了。。

解决方案 »

  1.   

    页面LOAD的时候设置主键的字段名称
    如:this.dl_news.DataKeyField="hbtd_NewsId";当你需要获取的时候使用:
    比如需要删除的时候获取当前行的ID:
    string newsid=this.dl_news.DataKeys[e.Item.ItemIndex].ToString();我的删除使用的方法如下:
    /**
     * 删除新闻
     * 
     * */
    private void dl_news_DeleteCommand(object source, System.Web.UI.WebControls.DataListCommandEventArgs e)
    {
      ImageButton button=(ImageButton)e.Item.FindControl("imgbtn"); if(button.CommandName=="delete")
    {
    string newsid=this.dl_news.DataKeys[e.Item.ItemIndex].ToString();

    if(newshdl.delNews(newsid,1))
    {
    Response.Write("<script>alert('删除成功!');window.location.href='news_modify.aspx';</script>");
    }
    else
    {
    Response.Write("<script>alert('删除失败!');window.location.href='news_modify.aspx';</script>");
    }

    }
    }