问题是这样的,有两个web窗体,第一个窗体里有一个 datagrid控件 和一个“添加记录”按钮,datagrid控件里有一列“编辑”列。当点击“添加记录”或“编辑”时跳到第二个窗体输入每个字段的值,然后保存返回。“添加” 和“编辑”都是在第二个窗体进行,要怎么区分是“添加”还是“编辑”,要怎么更新数据到数据库里。"编辑"时必须要在第二个窗体显示第一个窗体选择进行"编辑"的内容,还有表里面有一个字段是唯一的,在第二个窗体更新数据时要进行判断。(使用ado.net操作)谢谢!
调试欢乐多
如果是编辑, 这个字段还是以前得那个主键值不变。 当最后提交得时候, 当然就可以判断得出来了。
添加记录为button1
编辑按钮为button2
在button1的点击事件里
Response.Redirect("edit.aspx?action=add");
在button2的点击事件里
Response.Redirect("edit.aspx?action=edit&id="+e.items.Cell[0].Text.ToString()+"") //e.items.Cell[0]为你绑定到DataGrid中数据表的关键字(比如说用户表中的user_id),B页面(修改或添加页面)
根据Request.QueryString["action"]的值来判断是修改还是添加新值
if(Request.QueryString["action"].ToString()=="add")
{
//这是添加
}
else
{
//这是修改
}
例如:"form2.aspx?aa=edit" 或 "form2.aspx?aa=add"
然后在第二个窗体用request来判断。
new bizlogic.dbaccount().update_account
(gridusers.DataKeys[e.Item.DataSetIndex].ToString(),passwd,name,popadd,emailadd);
asp时就这么用的