问题标签 [application-end]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
616 浏览

asp.net - 如何在不使用 global.asax 的情况下添加 Application_End 处理程序?

我正在编写一个 http 模块,并且我想添加一个在(且仅当)appdomain 被回收时调用的方法。我不想向 global.asax 添加任何内容,我想在 http 模块中以编程方式进行。

但是,在模块方法中传递的实例上似乎没有End事件。如何订阅活动?HttpApplicationInitApplication_End

0 投票
2 回答
1442 浏览

asp.net - Global.asax 中 Application_End 处理程序中的 Server.MapPath

我想在我的应用程序结束时保存一个文件。

为此,我需要获取应用程序的根文件夹。

据我所知,我知道这样做的唯一方法是使用Server.MapPath("~"),但这不起作用,即使通过,HttpContext.Current.Server因为没有当前上下文。

是否有一种智能且简单的方法来获取该文件夹路径?我会遇到权限问题,尝试在根文件夹中创建文件吗?

任何替代想法如何做到这一点?

0 投票
3 回答
665 浏览

asp.net - asp.net 应用程序中的后台线程

我在 global.asax 中的 Application_Start() 中运行一个后台线程,以像 Windows 服务一样使用它,但是当我的网站中的所有会话结束时 applicaton_end 会触发

我有一个与 web 服务一起工作的短信业务,我想在我的服务器中有一个代理来检查传入的消息,比如 windows 服务

我将会话超时增加到 10 小时但是当我关闭浏览器应用程序结束时触发并且我的线程停止工作

我无法更改服务器属性

我可以禁用 application_end 以使线程继续工作吗?

由于英语写作不佳,我向你道歉

0 投票
2 回答
1062 浏览

c# - 在 asp.net WebService 中未调用 Application_End 时

我知道在以下情况下将调用 Apllication_end:

  1. 编辑正在运行的应用程序的配置文件。
  2. 更改bin目录中的dll。
  3. 停止(或重新启动)IIS。
  4. 进程回收在 IIS6 应用程序池中打开,或者使用 aspnet 工作进程。

但我的问题是什么情况下它不会被调用?
我知道如果您手动结束 w3wp 进程或服务器将残酷关闭,它将不会被调用。

有没有其他的场景?

谢谢!

0 投票
1 回答
973 浏览

c# - 每天在 Application_Start 上打开或创建一个文本文件并附加请求的网页,然后在 Application_End 上关闭

我的任务是运行一个简单的审核,该审核将记录任何用户请求的每个页面并存储页面的数据以及是否根据现有的安全调整授予或拒绝访问。

我正在考虑在 Application_Start 上打开一个文本文件,而不是每个活动会话都试图写入一个任何人都可能在任何给定点打开的文件。是的,我知道这个问题。理想情况下,我需要一个好的方法或一些帮助来解决我的解决方案。

我们有一个自定义类来检查当前上下文是否可以从他们的会话中访问页面。我想利用该类来传递请求的页面详细信息和成功/拒绝请求的结果。问题是我不是很熟练,我还有很多东西要学。

我正在考虑类似的东西;

只需打开文件并在应用程序运行期间保持打开状态。

然后在该类中,一些现有代码检查 AD 组;

我在脑海中知道我想要实现的目标是什么,但不完全理解这是否是最好的方法。我不确定是否有任何现有的类可以使这更容易。我正在使用 StreamReader、StreamWriter、File.Exists、File.Open。

有人可以朝正确的方向轻推。

谢谢

0 投票
0 回答
994 浏览

events - 试图识别 bin dir 更改或目录重命名应用程序重启的来源

我正在记录 Application_End 事件(IIS 7)。

我的应用偶尔会在关闭消息中生成此事件,并包含以下详细信息:

“关键目录的更改通知”和“bin 目录更改或目录重命名”。

记录的详细信息不包括作为此事件触发基础的文件或目录的名称。

我正在使用 VB.Net 在应用程序日志中记录事件。

请告知我的代码中必须包含哪些内容才能请求作为此事件触发基础的文件或目录名称。在不知道正在更改或重命名的内容的情况下,很难进一步调查该问题。

0 投票
1 回答
527 浏览

session - 我想使用 Application_End 和 Application_Error 进行日志记录,但没有 global.asax 文件?

我正在尝试为意外的会话丢失编写一些日志记录,我不确定它是超时问题还是导致我丢失会话的原因。

按照这个问题回答ASP.NET SessionState timeout我想在 Application_End 和 Application_Error 部分写我的日志记录,但是我找不到我的 global.asax 文件。

该文件或 Application_End 和 Application_Error 没有出现在我的搜索中。

我怎样才能找到我的 global.asax 文件或 Application_End 和 Application_Error 部分,或者我可以在哪里登录以记录会话的丢失?

提前致谢。

0 投票
0 回答
302 浏览

c# - 会话丢失和应用程序随机结束?

我有会话记录用户的登录信息,但由于我的应用程序结束而丢失。

从本地主机运行我的代码我没有任何问题,但是现在我已经在现场享用午餐,我很快就会在几分钟内失去会话。

我决定记录 Gobal.asax 文件并记录会话何时开始和结束,我的应用程序何时开始和结束,以及是否有任何应用程序错误。

当用户浏览该网站时,会检查会话是否为空,如果会话不为空,我会为该页面注册隐藏字段以使用我的会话值,但如果会话为空,我会放弃它们并重定向到我的登录页面。

这是我的日志显示的内容:

我在同一个超链接上点击 7 次浏览了我的网站,基本上只是刷新了我所在的页面,但由于未知原因,会话丢失并且应用程序已结束。从日志中可以看出,这一切都在一分钟内完成。

单击导航链接时,这是检查会话的代码。

什么可能导致我的会话如此迅速地丢失,为什么在现场托管时只是一个问题而不是本地主机的问题?

是什么导致应用程序结束,因为我没有记录应用程序错误?

0 投票
1 回答
449 浏览

asp.net - Asp.net Application_End 超时

在 Asp.Net 中,当应用程序池停止时,调用 application_end 事件。在这种情况下,我执行一些必须在应用程序关闭之前完成的操作。这些操作是同步的,但有时应用程序在所有操作未完成的情况下停止,但没有错误。我认为应用程序池级别或 application_end 事件级别存在超时。但我在文档中没有发现任何关于此超时的信息。

0 投票
1 回答
371 浏览

c# - 如何识别由于 MVC 应用程序中的应用程序结束而引发的 Session_OnEnd 事件

在我的 ASP.NET MVC4 应用程序中,我有 Session_OnEnd 和 Application_End 事件。当应用程序结束时首先调用 Session_OnEnd 事件,然后调用 Application_End。有没有办法在 Session_OnEnd 事件中识别它的发生是因为应用程序结束的原因?