Url.Action是编码参数值

时间:2011-02-03 20:46:33

标签: asp.net-mvc asp.net-mvc-2 view

在ASP.NET MVC中,如果我使用:

  

<%Response.Write(Url.Action(“Index”,   “用户管理”,新的   RouteValueDictionary(new {page =   “{0}”}))); %GT;

我明白了:

/ usermanagement?页=%7B0%7D

但我想得到:

/ usermanagement?页= {0}

为什么它是encondig我的参数值,我该怎么做才能编写未编码的参数值?

谢谢

2 个答案:

答案 0 :(得分:0)

首先,如果可能,应该避免使用QueryString参数。将它们变成路线参数。接下来,花括号应该被转义,这就是Url.Action()助手为你做的事情。

答案 1 :(得分:-3)

Url.Action辅助方法用于生成网址。网址需要进行URL编码才能成为有效的网址。所以你所观察到的是完全正常的行为。助手通过编码所有参数来生成有效的URL。