检索请求的操作名称

时间:2014-01-23 12:24:38

标签: asp.net-mvc

是否可以从HttpContext.Request检索该请求的动作名称。 我已经知道我可以获得HttpContext.Request.UrlReferrer但我想知道之前的行动是什么。

1 个答案:

答案 0 :(得分:1)

您必须使用TempData或HiddenFields并存储以前的Controller和Action。请求对象不保存任何内容(UrlReferer除外)以跟踪旧的Action和Controller。

您可以对UrlReferer进行一些字符串操作来解析它并了解以前的控制器操作。但我不打算这样建议。请记住,UrlReferer可以轻松操作。

使用TempData是服务器跟踪单个请求的数据的一种方式。您还可以使用HiddenFields存储相同的信息。但是TempData和HiddenFields之间的决定是基于这个(以前的控制器和动作)信息对于应用程序的安全性和重要性。

您可以使用 -

获取当前的操作和控制器值
ControllerContext.RouteData.Values["Controller"];
ControllerContext.RouteData.Values["Action"];