问题描述
现有一个Gridview1,通过sqldatasource1,关联至数据库Message(站内信息)(MessageID(主键),title,content,checked(是否已读)).我给gridview添加了一个hyperlinkfield,通过超连接,连接到一个detailsview页面.编辑列后,得到的代码:<asp:HyperLinkFieldDataNavigateUrlFields="MessageID"DataNavigateUrlFormatString="UserReadMessage.aspx?MessageID={0}"DataTextField="title"HeaderText="信件标题"Target="_blank"/>其中,UserReadMessage.aspx是用户读信息的页面.此页面的detailsview控件接受超连接传递过来的MessageID作为参数.为了更改该条信息的checked属性,表示信息是否已经被阅读.我需要取得此条数据的主键,即MessageID.问题是:我该如何做,以取得被传递过来的MessageID.我的分也不多了,只能少给点...见谅
解决方案
解决方案二:
stringMessageID=Request["MessageID"].ToString()//这个MessageID就是不过我通常写防御代码,呵呵,大小写有问题,看懂就成stringMessageID="";try{MessageID=(convert.toint(Request["MessageID"].ToString()).ToString();//这里如果MessageID不存在或非数字将会引发异常}catch{MessageID="0";}
解决方案三:
requerst.querytstring["messageid"]