HttpContext.Current 在 Microsoft Azure WebJobs 的控制台应用 运行 中不为空

HttpContext.Current is NOT null in a Console App running in Microsoft Azure WebJobs

我在 Microsoft Azure WebJobs 中 运行ning 的控制台应用程序面临的问题是 HttpContext.Current 未评估为空。换句话说,当我执行以下操作时,从 HttpContext.Current.User.Identity.GetUserId() 读取 UserID,其计算结果为“”。

string UserID = HttpContext.Current == null ? App.UserID : HttpContext.Current.User.Identity.GetUserId();

请注意,我也从我的 MVC 5 Web 应用程序调用此代码,这就是我执行上述检查的原因。

奇怪的是,当我 运行 来自本地计算机的控制台应用程序时,HttpContext.Current 评估为 null 并按预期工作。这仅发生在 Microsoft Azure WebJobs 中。

此代码是在 .NET Framework 4.5.2 中开发的。

知道如何解决这个问题或如何使用 Visual Studio 远程调试 WebJob 控制台应用程序吗?

原来不是控制台应用程序导致了这个问题。控制台应用程序更新了 Google 日历,触发了 webhook 通知。此 webhook 通知正在填充 HttpContext。