如何在Windows服务托管的asp.net核心应用程序中检测用户登录和注销事件?

时间:2019-10-03 12:50:52

标签: asp.net-core windows-services

我在Windows服务中托管了一个asp.net core 3.0应用程序。我在following documentation中使用了方法。如何在我的代码中检测用户登录和注销会话的更改?

我试图用OnSessionChange覆盖创建ServiceBase,但是我不知道如何启动或注册它,而且我不确定这是否有效。 我也尝试使用services.AddHostedService<IHostedService>() method,但是在IHostedService中无法处理会话更改事件。

        public static IHostBuilder CreateWebHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args)
                .UseWindowsService()
                .ConfigureServices((hostContext, services) =>
                {
                    services.AddHostedService<SessionChangesListener>();
                })
                .ConfigureWebHostDefaults(webBuilder =>
                {
                    webBuilder.UseStartup<Startup>();
                });

0 个答案:

没有答案