【问题标题】:ControllerContext vs HttpContext in AzureAzure 中的 ControllerContext 与 HttpContext
【发布时间】:2011-05-25 15:32:32
【问题描述】:

我想知道在 Azure 设置中使用 ControllerContext 与 HttpContext 之间是否有任何影响。我发现 HttpContext 是线程静态的,我正在尝试找出这在 Azure 中是否相关。

假设没有真正的区别,我能保证调用控制器动作时两者相等吗?我正在尝试为已建立的应用程序编写单元测试,该应用程序在控制器操作中对 HttpContext.Current 进行一些调用。在整个应用程序的某些地方,直接对 HttpContext.Current 进行更改(特别是作为授权的一部分)。如果我切换到 ControllerContext,是否会反映对 HttpContext.Current 所做的更改?

谢谢!

【问题讨论】:

    标签: asp.net-mvc-2 azure httpcontext controllercontext


    【解决方案1】:

    它们并不完全相同 - 但如果您碰巧在 Web 调用的同一个传入线程上同时调用它们,那么它们确实都会提供访问同一个 HttpContext 实例的机制。

    查看这个问题和答案 - Difference between HttpContext.Current and Controller.Context in MVC ASP.NET

    为了可测试性,如果可以的话,最好转移到 ControllerContext。

    【讨论】:

      【解决方案2】:

      关于 ControllerContext 与 HttpContext,我不知道。我只知道 Windows Azure 与它无关。 Windows Azure 运行 Windows 和 IIS7 - 因此,无论您的本地决策的答案是什么,都同样适用于云。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-04-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-09-07
        • 2022-01-20
        • 1970-01-01
        相关资源
        最近更新 更多