Application_End() 事件在 global.ascx 中没有任何调用的情况下被触发

发布于 2024-11-25 05:24:47 字数 177 浏览 0 评论 0原文

在我触发更新或删除过程的按钮后,我的代码中的 Application_End() 事件在没有任何调用的情况下被触发。这会导致所有会话被破坏,并在用户每次更新/删除某些内容时将用户重定向到登录页面。 我认为这是由于某些异常而发生的,该异常正在终止并重新启动应用程序,而没有任何警告或错误。 请建议。 事先致谢

the Application_End() event in my application is getting fired without any call to the event by my code after i fire a button for update or delete process. this causes all the Sessions destroyed and redirects the user to Login page every time he update/delete some thing.
I think this is happening due to some Exception which is terminating and restarting Application without any warning or error.
Please suggest.
Prior thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

你对谁都笑 2024-12-02 05:24:47

在调试模式下运行? AppDomain 每 15 次动态重新编译就会被回收一次。当文件发生变化时它也会回收,例如web.config。当应用程序站点内的非应用程序文件和文件夹发生更改时,它甚至会回收。因此,请测试一下在发布模式下是否仍然会发生这种情况。

顺便说一下,您可以更改强制 AppDomain 重置的动态重新编译次数:在 web.config 中进行设置:

<compilation numRecompilesBeforeAppRestart="15" />

提示:调试时不要使用 InProc 会话 - 使用 StateServer 或 SQL State(我的偏好) ) 反而。

请参阅 此博文了解更多信息。

Running in debug mode? The AppDomain gets recycled every 15 dynamic recompilations. It recycles when files change too, e.g. web.config. It even recycles when non-application files and folders change within the app site. So test to see if this still happens in Release mode.

Incidentally you can change the number of dynamic recompiles that force an AppDomain reset: In the web.config set it here:

<compilation numRecompilesBeforeAppRestart="15" />

Tip: Don't use InProc sessions while debugging - use StateServer or SQL State (my preference) instead.

See this blog post for more info.

朱染 2024-12-02 05:24:47

第一个要查看的地方是事件查看器。在那里您可以找到工作进程中抛出的任何未处理的异常。

First place to look into is the Event Viewer. There you can find any unhandled exception thrown in the worker process.

偏爱自由 2024-12-02 05:24:47

您的网站可能由于某种原因正在回收。您必须检查代码的作用。我建议检查代码中的站点结构是否未更改(创建/删除目录)——这会导致应用程序域回收。

Your site may be recycling for some reason. You will have to check what the code does. I suggest checking that the site structure is not being altered in you code (create/remove directory) --- this leads to the app domain recycling.

写给空气的情书 2024-12-02 05:24:47

会话状态在 Application_End 中不可用。就是这么简单。 Application_End 是在其他一切都消失之后触发的事件。事件日志条目很好地描述了这一点。

Session state is not available in Application_End. It's that simple. Application_End is an event that fires after everything else is long gone. The event log entry describes this quite well.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文