我有2个索引操作发布并在我提交表单时获取Post Action返回:
return RedirectToAction("Index");
修改
我的获取索引操作可以获得一些参数来支持搜索并过滤返回的List。像这样:
public ActionResult Index(string search = "", long searchItem = 0, long RC = 0, long Page = 1)
我使用了Paged List,并且有一个DropDownList
显示每页的行数,我编写了一个jquery脚本来更改此下拉列表form.submited以及表单提交时
在RedirectTAction
我丢失了以下参数代码:
[HttpPost]
public ActionResult Index(FormCollection collection, string search = "") {
long RowCount = 0;
long.TryParse(string.Format("{0}", collection["RowCount"]), out RowCount);
//More implement
return RedirectToAction("Index", new { RC = RowCount, search = search, searchItem = Id });
那么有没有办法在Post Action中获取Url或url参数?在这种情况下你有什么建议?
答案 0 :(得分:1)
您可以在重定向之前捕获RouteValueDictionary中的所有查询字符串参数:
var query = new RouteValueDictionary(
Request
.QueryString
.Keys
.OfType<string>()
.ToDictionary(key => key, key => (object)Request.QueryString[key])
);
return RedirectToAction("Index", query);
这只会保留查询字符串参数。如果要添加路由值和POSTed值,可以将它们连接到结果。