路由接受Asp.net MVC中的URL中的任何字符,如stackoverflow

时间:2015-09-07 16:34:19

标签: c# asp.net .net asp.net-mvc asp.net-mvc-routing

我创建了以下路线以接受最后一个参数中的任何值,但它无效。

routes.MapRoute(
    "My Route", // Route name
    "Home/MyMethod/{LID}/{MID}/{JID}/{*Title}", // URL with parameters
    new { controller = "Home", action = "MyMethod" } 
);

我想接受像

这样的路线
http://localhost:10537/Home/MyMethod/47518/QQEBH/T2776086/8758~!@#$%^*()-+=-HAMPDEN--DR-TAMPA-FL-33626

工作样本是stackoverflow本身。

http://stackoverflow.com/questions/28695240/how-to-show-american-sign-language-hand-&*%3E%3C:signs-on-ios-keyboard-keys/28695997?noredirect=1#comment51236176_28695997

您可以在上面的网址中看到,它接受&*><:等符号。 任何帮助都会很明显。

1 个答案:

答案 0 :(得分:0)

搜索后,我找到了解决方案

<system.web>
    <httpRuntime requestPathInvalidCharacters="" requestValidationMode="2.0" />
    <pages validateRequest="false" />
</system.web>

参考: - Getting "A potentially dangerous Request.Path value was detected from the client (&)"