如何从 ASP.NET mvc 中的控制器访问 HttpContext
How to access HttpContext from controller in ASP.NET mvc
在 asp.net 中,如何获取我所在页面的当前 httpcontext?
我曾尝试将 httpcontext 作为参数提供给相关控制器,但这不起作用。我发现很多人描述了如何指定对象,但我根本找不到任何关于如何将 httpcontext 添加到控制器的信息(比如,在参数中)
这行不通
public class MovieController : Controller
{
public ActionResult Random(HttpContext mycontext)
{
RandomMovieViewmodel rmvm = new RandomMovieViewmodel();
return View(rmvm);
}
我如何访问上下文?我应该做一个属性吗?
控制器定义在这里非常重要。
例如,在具有派生自 ControllerBase 的控制器的 .Net Core 2.2 中,HttpContext 公开为 属性。
我不确定您的环境或您的 class 定义,但它在 Asp.Net MVC 中总是相似的。请确保您正确定义了控制器 class。
更新
当您从 Controller class 派生时,HttpContext 公开为 属性。可以直接使用。
public class TestController : Controller
{
public ActionResult Index()
{
var context = HttpContext;
return View();
}
}
在 asp.net 中,如何获取我所在页面的当前 httpcontext?
我曾尝试将 httpcontext 作为参数提供给相关控制器,但这不起作用。我发现很多人描述了如何指定对象,但我根本找不到任何关于如何将 httpcontext 添加到控制器的信息(比如,在参数中)
这行不通
public class MovieController : Controller
{
public ActionResult Random(HttpContext mycontext)
{
RandomMovieViewmodel rmvm = new RandomMovieViewmodel();
return View(rmvm);
}
我如何访问上下文?我应该做一个属性吗?
控制器定义在这里非常重要。
例如,在具有派生自 ControllerBase 的控制器的 .Net Core 2.2 中,HttpContext 公开为 属性。
我不确定您的环境或您的 class 定义,但它在 Asp.Net MVC 中总是相似的。请确保您正确定义了控制器 class。
更新
当您从 Controller class 派生时,HttpContext 公开为 属性。可以直接使用。
public class TestController : Controller
{
public ActionResult Index()
{
var context = HttpContext;
return View();
}
}