繁体   English   中英

.NET在异步任务完成之前返回响应

[英].NET return response before async task completes

我有一个webapp,用户要求更改大量数据。 可能会保留1000个或更多对象。

我先验证了这些请求,然后开始保存数据。 确实不需要LONG单独保留,而是要乘以数千就可以了。 我使用的是OR / M框架,不想离开它……这并不是真正的瓶颈。

我可以建立一个较小的对象图来持久化-只是一个关于如何持久化其余对象然后再以其他方式持久化的“计划”,但是我真的更喜欢一个简单的解决方案。

理想情况下,我将进行验证,然后启动一个异步任务,该任务将保留所有数据。 验证后,用户将获得确认,他们可以继续进行一些快乐的尝试。

.NET有可能吗? 有什么建议么?

谢谢

您可以先验证输入,设置某种状态标签以指示一切正常,然后在新线程中启动持久性部分。

我的意思是这样的:

 protected void Button1_Click(object sender, EventArgs e)
 {
      new Thread(() => { 
          //logic to save the data goes here.
      }).Start();
      Label1.Text = " Input validated. Thanks!";
 }

用户可以安全地关闭浏览器,操作将完成。

编辑

从这种方法无法很好地扩展的角度来看,Broken Glass的评论是正确的。 有一种更好的方法来执行这种异步操作。 在这里详细。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM