繁体   English   中英

如何从 ASP.NET mvc 中的 controller 访问 HttpContext

[英]How to access HttpContext from controller in ASP.NET mvc

在 asp.net 中,如何获取我所在页面的当前 httpcontext?

我试过给相关的 controller httpcontext 作为参数,但这不起作用。 我发现很多人都在描述如何指定 object,但我根本找不到任何有关如何将 httpcontext 添加到 controller 的信息(例如,在参数中)

这不起作用

    public class MovieController : Controller
    {
            public ActionResult Random(HttpContext mycontext)
        {

            RandomMovieViewmodel rmvm = new RandomMovieViewmodel();


            return View(rmvm);
        }

我如何访问上下文? 我应该做一个属性吗?

Controller 定义在这里非常重要。

例如,in.Net Core 2.2 带有从 ControllerBase 派生的 Controller,HttpContext 作为属性公开。

我不确定您的环境或 class 定义,但它在 Asp.Net MVC 中总是相似的。 只要确保您正确定义了 Controller class。

更新

当您从 Controller class 派生时,HttpContext 暴露为属性。 您可以直接使用它。

public class TestController : Controller
{
    public ActionResult Index()
    {
        var context = HttpContext;

        return View();
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM