我正在ASP.NET/C#中的一个页面上工作,其中用户的信息保存到数据库中.
页面上有许多字段,验证完成后,信息将被保存.
使用ASP.NET按钮完成信息提交.
表的主键是在代码本身生成的,也就是说,每次增加一个.
我刚刚通过浏览器的重新加载按钮重新加载页面时遇到了问题.我注意到提交了相同的用户信息,主键值加1.
所以我的问题是我应该如何解决这个问题?
我是否应该在成功提交数据后清除所有文本框的值,以便验证,然后用户必须再次填写信息?
请分享您的想法,我该如何处理.
最简单的方法是使用Post/Redirect/Get模式,在您插入行的回发之后,您将用户重定向回他们可以查看该项目的页面.这样,如果他们按下Refresh,它将只刷新视图页面.
例如:
protected void Button1_Click(object sender, EventArgs e)
{
// Insert Data
...
// Redirect to get
Response.Redirect("ViewItem.aspx?id=" + insertedItemId);
}
Run Code Online (Sandbox Code Playgroud)
注意:他们仍然可以按下并再次提交,但这通常在重新提交之前由浏览器确认.