我正在 ASP.NET MVC 4 中构建一个分页脚本,我希望能够获取页面的当前 URL
/Cards/Search?Page=&Terms=&Display=false
并更改 Page 参数的值。我该怎么做?
我正在 ASP.NET MVC 4 中构建一个分页脚本,我希望能够获取页面的当前 URL
/Cards/Search?Page=&Terms=&Display=false
并更改 Page 参数的值。我该怎么做?
这可能不是最有效的方法,但它确实适用于我正在做的事情:
RouteValueDictionary rvd = new RouteValueDictionary();
foreach(string item in Request.QueryString){
if (item != "Page") { rvd.Add(item, Request[item]); }
}
rvd.Add("Page", 1);
Url.Action("Action", rvd)
建议你看看 RouetConfig 是如何工作的。 http://www.asp.net/mvc/tutorials/controllers-and-routing
从这里开始 global.asax
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
WebApiConfig.Register(GlobalConfiguration.Configuration);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes); // Research this
BundleConfig.RegisterBundles(BundleTable.Bundles);
没有什么能阻止你调用你的控制器动作。您也可以在那里重定向
RedirectToAction("Action","controller");
或直接重定向...
Redirect(myHackedUrl);
如果这是一个更具体的永久网络规则,那么在 IIS 级别还有一个非常有用的工具来管理重定向。 http://www.iis.net/downloads/microsoft/url-rewrite