我遇到某种情况,如果提供了Returnurl,控制器中的ActionResult方法需要进行重定向。
但是,如何将查询字符串附加到该字符串并仍然使用:
返回重定向(网址)?
每次我这样做时,我总会得到一个安全例外,即请求具有潜在的危险值(符号,甚至是问号)。
答案 0 :(得分:4)
尝试此操作,根据需要填写操作和控制器的名称:
System.Web.Routing.RouteValueDictionary rvd = new System.Web.Routing.RouteValueDictionary();
foreach(string key in HttpContext.Request.QueryString.AllKeys)
{
rvd.Add(key, HttpContext.Request.QueryString[key]);
}
return RedirectToAction("MyAction", "MyController", rvd);
答案 1 :(得分:-1)
忘了 - 我使用了Url.Content,现在它运行得很好。
返回重定向(Url.Content(model.ReturnUrl + otherPotentialQueryStringHere)