是否可以从HttpContext.Request
检索该请求的动作名称。
我已经知道我可以获得HttpContext.Request.UrlReferrer
但我想知道之前的行动是什么。
答案 0 :(得分:1)
您必须使用TempData或HiddenFields并存储以前的Controller和Action。请求对象不保存任何内容(UrlReferer除外)以跟踪旧的Action和Controller。
您可以对UrlReferer进行一些字符串操作来解析它并了解以前的控制器操作。但我不打算这样建议。请记住,UrlReferer可以轻松操作。
使用TempData是服务器跟踪单个请求的数据的一种方式。您还可以使用HiddenFields存储相同的信息。但是TempData和HiddenFields之间的决定是基于这个(以前的控制器和动作)信息对于应用程序的安全性和重要性。
您可以使用 -
获取当前的操作和控制器值ControllerContext.RouteData.Values["Controller"];
ControllerContext.RouteData.Values["Action"];