我有一个webapp,用户提出更改大量数据的请求。也许持有1000个或更多的物品。
我预先验证这些请求,然后开始持久保存数据。它确实不需要单独持续LONG,而是需要几千倍才能实现。我正在使用OR / M框架,并且不想放弃它...而且它并不是真正的瓶颈。
我可以构建一个较小的对象图 - 只是一个关于如何保留其余部分的“计划”,然后以其他方式保留它,但我真的更喜欢更简单的解决方案。
理想情况下,我会验证,然后启动一个可以保留所有数据的异步任务。用户在验证后会得到确认,并且可以顺利地进行。
这在.NET中可行吗?有什么建议吗?
由于
答案 0 :(得分:1)
您可以先验证输入,设置某种状态标签,指示一切正常,然后在新线程中启动持久性部分。
我的意思是这样的:
protected void Button1_Click(object sender, EventArgs e)
{
new Thread(() => {
//logic to save the data goes here.
}).Start();
Label1.Text = " Input validated. Thanks!";
}
用户可以安全地关闭浏览器,操作将完成。
修改强>
碎玻璃'评论是正确的,因为这种方法不能很好地扩展。有一种更好的方法来执行这种类型的异步操作。这是detailed here.