MVC2 ASP.Net URL是否自动解码?

apo*_*lfj 2 c# asp.net-mvc asp.net-mvc-2

所以我在MVC2中调用Controller就像这样,我访问了经典的查询字符串就好了.请注意第二个参数thing2已经URLEncoded,并且再次检索URLEncoded查询字符串和URLDecoding是没有问题的.我的例子看起来像这样......

http://mydomain.com/controller?thing1=1544&thing2=somethingURLEncoded

现在我尝试转向处理参数的MVC2 ASP.Net方式,并使自己成为一个很好的自定义MapRoute.我测试它看到它适用于一个简单的测试...

http://mydomain.com/controller/Index/1544/999

我用VS2010调试我的控制器里面的Index方法成功了!

然后,我决定采取下一步,将URL上的最后一个参数更改为URLEncoded值...

http://mydomain.com/controller/Index/1544/somethingURLEncoded

我在浏览器中执行此操作后看到的问题是,在我进入控制器内部的Index方法之前,它几乎看起来像MVC2 ASP.Net是自动URL解码的.

是什么赋予了?我以为我可以先进入控制器内部,然后再进行自己的URLDecode.因为原始数据是AES加密的并且在其中有正斜杠..,过早地使用我的参数URLDecoding不是我可以计划的副作用.

请帮忙.

Nec*_*ros 6

是的,MVC自动url解码动作参数.但您仍然可以通过查询字符串访问url编码版本.