c# - 如何在发送请求后停止加载页面?

标签 c# javascript asp.net request

我有一个加载时间很长(比如 2 分钟)的 ASP.NET (C#) 页面。向用户呈现一个小动画和一条“请稍候”消息。如果用户不小心加载了这个页面,他们需要等待它加载。

我的问题是:有没有办法停止页面加载?

谢谢

最佳答案

如果你想停止服务器端处理那么这是一个棘手的操作。通常,一旦发出请求,该页面就会自行呈现,而与其他正在进行的事情无关。您可能需要做的是重新设计该页面以定期检查是否已发出停止命令并中止此时正在执行的任何操作。停止标志可以放在 session 中,并且应该在停止后清除。

您可能还需要考虑如何正确识别要停止的正确对象(以防有多个运行)。这可以通过返回一个唯一 ID 来完成,该 ID 可以在对“中止”页面的部分调用中使用。

虽然我的方法不是这种复杂的冗长代码,而是努力阻止用户发生这种事故。可能让他们点击的任何链接弹出一个警告,说“下一个页面需要几分钟才能呈现,你想继续吗”,然后希望你能在页面请求发出之前有效地中止它。

我应该指出,我以前从未尝试过做这种事情,所以可能有更简单的方法来做,但这就是我可能认为 abotu 解决问题的方式。

关于c# - 如何在发送请求后停止加载页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3372875/

相关文章:

c# - MVVM:GUI 和 ViewModel 之间的真正分离

c# - 编译错误,.NET 没有看到存在的函数

javascript - 当ID选择器缓存在jquery中时,ID选择器是否比类选择器快

c# - 网页中的二维码阅读器

asp.net - 通过asp :hiddenfield回发将json数据持久保存在jstree中

c# - 使用 AfterCompile 目标签署 ClickOnce 应用程序

c# - 单声道 GTK# : Trying to remove text in ComboBox and then prepend new text to the ComboBox but some of the old text remains

javascript - Node JS Express 线程说明

javascript - javascript中是否有类似utf8-encode(php)的函数?

c# - 使用查询字符串 MVC 将数组传递给 View