【问题标题】:Getting ASP.Net Core shutdown triggering ApplicationStopping event in IISExpress在 IISExpress 中获取 ASP.Net Core 关闭触发 ApplicationStopping 事件
【发布时间】:2016-12-21 16:33:46
【问题描述】:

我知道之前有一个关于此的问题,还有一个 GitHub 问题:https://github.com/aspnet/Hosting/issues/846 从 Microsoft.AspNetCore.Server.IISIntegration 1.1 开始似乎已解决。然而,尽管有这个版本,这在 IISExpress 中似乎仍然不起作用(我正在通过让它执行 Debug.WriteLine 并在 ApplicationStopping 和 ApplicationStopped 上写入日志文件来测试它)。我正在使用工具托盘小部件关闭 IISExpress。

我不确定我是否做错了什么,是否支持以这种方式关闭 IISExpress 作为触发这些事件的“正常关闭”。看起来这可能在 IIS 中运行良好,但您显然无法使用 ASP.Net Core 和完整的 IIS 在本地进行开发,所以我想知道是否有任何方法可以在开发环境中触发这些事件进行测试?

这是 Startup.cs 中的代码:

public void Configure(IApplicationBuilder app, IApplicationLifetime life, IHostingEnvironment env, ILoggerFactory loggerFactory)
    {
        // other configure code here

        life.ApplicationStopping.Register(() =>
            Debug.WriteLine(">>Stopping"));
        life.ApplicationStopped.Register(() =>
            Debug.WriteLine(">>Stopped"));
    }

【问题讨论】:

  • 如果您不向我们展示您在做什么,我们如何判断您是否做错了什么?
  • 好点,虽然是相当不起眼的代码,但我现在已经添加了
  • 可能是个愚蠢的问题,但是您已经安装了 IIS 托管模块,对吧? docs.microsoft.com/en-us/aspnet/core/publishing/…
  • 除此之外,请确保您还从 .NET Core 下载页面下载了 1.1 运行时和 SDK。除此之外,我们对当前信息没有太多帮助。也试试事件查看器应用程序日志。它更有可能与配置相关而不是与代码相关,因此您将无法设置调试断点,这就是您希望做的。
  • 你看到这个链接了吗shazwazza.com/post/aspnet-core-application-shutdown-events 我想你会因为它永远不会运行而失去生命

标签: c# asp.net-core iis-express kestrel-http-server


【解决方案1】:

我有一个包含所有最新 NuGet 更新的应用程序,并且可以验证 ApplicationStopped 和 ApplicationStopping 未在 IISExpress 下触发。 ApplicationStarted 似乎工作正常。

我发现如果您直接在我的开发环境中调用应用程序,一切都很好。

This article 告诉你怎么做。

从下拉框中选择应用程序很简单:

我意识到这与使用 IIS Express 不同,但可能会帮助您解决问题。

差点忘了,要调用你需要在启动应用程序时出现的命令窗口中键入 Ctrl+C

【讨论】:

  • 是的。仅 Ctrl+C。当使用窗口的标准 [X] 关闭控制台窗口时,它显然不会触发。对我来说似乎是一个错误,因为我在检测控制台关闭事件方面从来没有遇到过任何大问题,至少在 Windows 平台上......
【解决方案2】:

也许您可以在派生自 HttpApplication 的类中使用 Application_End 方法。当您的应用程序正在卸载时,将调用此方法。

【讨论】:

  • 问题是关于 aspnet.core.. 那里没有 HttpApplication
猜你喜欢
  • 2021-11-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-11-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多