C#ASP.NET页面离开事件?

我正在寻找一个可以触发的事件或者告诉用户是否正在离开页面的方法。 导航到另一个页面或完全关闭页面。 这可能通过引发的事件发生吗?

不是在ASP.NET本身。

您将不得不使用window.onbeforeunload()类的东西编写一些前端javascript来执行此操作。 然后你必须进行一次AJAX调用,告诉你的后端这个事件正在发生。 当然,这不是万无一失的。 浏览器崩溃或强制“退出”不会触发此事件。

不是通过服务器端事件。 检测页面离开需要JavaScript。

客户端,您可以使用onunload() (或onbeforeunload()来表示“你确定”他们会感激,如果这意味着他们在写了一篇很长的stackoverlow.compost之后意外停止了某些事情,但会让用户烦恼在多数情况下)。

服务器端,你不能真的,虽然你可以让onunload做一些事情来向服务器发出信号。

但是,作为一项规则,这表明您将网络视为有状态而非无国籍。 无状态设计可以更好地使用像网络这样的无状态协议; 您的应用程序将每个请求视为唯一且独立于先前请求(当然,该请求将取决于客户端如何处理先前的请求),您的应用程序的可扩展性和可靠性就越高。