第二个进程似乎使第一个进程崩溃(.net,c#)

时间:2012-03-01 11:33:43

标签: asp.net

在.net-webapplication中,我有一个包含以下代码的模块:

protected void SaveButton_Click(object sender, EventArgs e)
{
   //..

   itemRepository.Create(store, validFrom);

   Item item = itemRepository.GetByStoreAndValidFrom(store, validFrom);

   //..

}

项目由存储库创建,然后从数据库中提取 有时,f.ex。如果用户非常快速地点击按钮两次,则会发生以下情况:
此模块的两个程序流程(如果术语不对,请更正!)在彼此之后非常接近地开始。创建了两个项目,第一个进程崩溃,因为数据库中有多个可用项目 有没有一个很好的方法来处理这个问题?我考虑过在界面中放置一个javascript阻止程序(以防止第二次单击按钮)但是会感谢提示。

1 个答案:

答案 0 :(得分:2)

禁用启动回发的控件将导致不提交表单。

UI上I solved这个问题的方法是添加另一个div,它将显示在Web表单的顶部,以防止重复提交。解决方案的原始文章是here