gpt4 book ai didi

asp.net - Owin 中的 Global.asax 中有 Application_End 吗?

转载 作者:行者123 更新时间:2023-12-02 02:56:58 26 4
gpt4 key购买 nike

Startup.cs是一种初始化应用程序的新方法,而不是 Global.asax 中的 Application_Start ,它很好。但是有没有地方可以放置我的拆卸逻辑,例如:

public class WebApiApplication : System.Web.HttpApplication
{
protected void Application_End()
{
// Release you ServiceBroker listener
SqlDependency.Stop(connString);
}
}

查看了Microsoft.Owin命名空间,但它似乎只有 OwinStartupAttribute。这是否意味着应用程序生命周期事件仍然由 System.Web.HttpApplication 实例处理并且不受 OWIN 规范支持?

最佳答案

AppProperties(在 Microsoft.Owin.BuilderProperties 中找到)公开了 OnAppDisposeCancellationToken

您可以获取此 token 并为其注册回调

public class Startup
{
public void Configuration(IAppBuilder app)
{
var properties = new AppProperties(app.Properties);
CancellationToken token = properties.OnAppDisposing;
if (token != CancellationToken.None)
{
token.Register(() =>
{
// do stuff
});
}
}
}

关于asp.net - Owin 中的 Global.asax 中有 Application_End 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27444924/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com