日期:2014-05-20  浏览次数:20541 次

在asp.net1.1中如何获取datalist中选定项的主键值

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


谢谢大家了。。。。。

------解决方案--------------------
页面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> ");
}

}
}