【发布时间】:2015-03-01 17:49:05
【问题描述】:
我正在尝试使用 Httpcontext.Current 在方法(由控制器调用)中获取我的 owin 上下文,这在 IIS 中运行站点时非常有效。仅当我将我的 api 作为 Azure 辅助角色运行时才存在问题。即使我在控制器中添加断点并尝试获取 HttpContext.Current 我仍然会得到空值。
我的问题是:使用 azure 时是否需要添加一些额外的内容?还是工作者角色不支持这种方法?
【问题讨论】:
-
我怀疑
HttpContext.Current是否在网站是自托管的情况下有效。你真的验证过吗? -
其实没有。我将此 api 与另一个服务混淆了。我会编辑我的问题。你认为这就是它不起作用的原因吗?由于在工作角色中运行 owin api 与运行自托管或多或少相同。
-
是的,准确地说。您应该忘记启用 OWIN 的应用程序中的
HttpContext.Current。它可能在 IIS 中工作的事实并不意味着您应该使用它,因为您正在扼杀 OWIN 的所有好处并将您的代码与 ASP.NET 主机耦合。 -
好的,现在我知道去哪里寻找更多信息了。如果您添加答案,我会接受。
标签: c# owin azure-worker-roles