首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用RedirectToAction方法添加查询字符串值?

如何使用RedirectToAction方法添加查询字符串值?
EN

Stack Overflow用户
提问于 2009-07-01 03:52:24
回答 4查看 73.3K关注 0票数 86

在asp.net mvc中,我使用了以下代码:

代码语言:javascript
复制
RedirectToAction("myActionName");

我想通过查询字符串传递一些值,我该怎么做呢?

EN

回答 4

Stack Overflow用户

发布于 2009-07-01 03:57:31

传递的任何不属于路由的值都将用作查询字符串参数:

代码语言:javascript
复制
return this.RedirectToAction
  ("myActionName", new { value1 = "queryStringValue1" });

将返回:

代码语言:javascript
复制
/controller/myActionName?value1=queryStringValue1

假设没有名为"value1“的路由参数。

票数 172
EN

Stack Overflow用户

发布于 2020-04-03 20:33:01

对于像我这样希望将当前查询字符串值添加到RedirectToAction中的人,以下是解决方案:

代码语言:javascript
复制
var routeValuesDictionary = new RouteValueDictionary();
Request.QueryString.AllKeys.ForEach(key => routeValuesDictionary.Add(key, Request.QueryString[key]));
routeValuesDictionary.Add("AnotherFixedParm", "true");
RedirectToAction("ActionName", "Controller", routeValuesDictionary);

如您所见,解决方案是使用RouteValueDictionary对象

票数 9
EN

Stack Overflow用户

发布于 2013-01-11 04:16:51

还可以考虑使用T4MVC,它具有扩展方法AddRouteValue()AddRouteValues() (如setting query string in redirecttoaction上的这个问题所示)。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1067200

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档