【发布时间】:2018-01-08 17:00:58
【问题描述】:
我将尝试使用RedirectToAction MVC 方法从另一个操作方法重定向到一个操作方法。目标操作方法接受查询参数。当我调用目标方法时,查询参数会被 Url 编码。
目标方法具有以下签名:
[Route("\resource\{id}")]
public ActionResult DestMethod(int id, string token)
我使用 RedirectToAction 从另一个操作方法调用此方法,如下所示
RedirectToAction("DestMethod", new {id = id, token = token});
所以当控件进入 DestMethod 时,token 参数得到 Url Encoded。
这种行为的原因是什么以及如何预防?
编辑:
如果我从RidirectToAction 发送令牌参数,即没有Url 编码,DestMethod 将接收它作为编码并且不解码它。这是令人困惑的行为。如果我从 jquery ajax 发送编码参数,一切正常。
【问题讨论】:
标签: c# asp.net-mvc redirect url-encoding