在MVC3应用程序中,存储Controller,Action& S的推荐方法是什么?查询页面的详细信息,然后在后续页面的actionlink中重用它们?
e.g。来自page~ / Home / BlogsByTag?tag = Cloud%20Services列出了一系列博客,捕获Controller,Action& amp;的最佳方式是什么?查询然后如何将这些应用到后续编辑页面中的“返回列表”动作链接(〜/ Admin / Edit /?Blog = 1234)?
答案 0 :(得分:0)
如果我理解你,你想用引用页面中的url生成一个ActionLink吗?
您可以根据完整网址阅读请求中的引荐来源:
Request.UrlReferrer
如果您想要访问操作,控制器和查询部件,则必须在链接中将它们作为参数传递。例如:
Html.ActionLink("Linktext", "Edit", "Admin", null,
new {
Blog = 1234,
ReferringController = "Home",
ReferringAction = "BlogsByTag",
ReferringQueryParams = ...
});
然后您可以在编辑操作中读取这些val并将其传递给View以生成反向链接。
但是使用history.back()
可能是一种更简单的方法。
答案 1 :(得分:0)
您可以使用:
Url.RouteCollection["controller"]
Url.RouteCollection["action"]
...
对于您需要的变量。对于查询字符串,您可以使用:
的Request.QueryString [ “变量1”]
或者你可以声明控制器:
public ActionResult MyController(string controller, string action, string variable...)
并且变量将自动填充。
然后您可以在Session["refurl"]
上存储此信息(或完整网址),这对用户会话的其余部分有效