0
我正在将我的家庭网站转移到MVC,并且遇到了URL路由问题。该网站已经提供了几个链接,在路径中包含波浪号(〜)字符;像如何在C#MVC路由表中掩饰代字符(〜)字符?
http://<root>.../~files/...
http://<root>.../~ws/...
,我希望他们每个人都是由单独的控制器,如filesController,wsController处理,所以我的路由表看起来像
routes.MapRoute("files", "~files/{*prms}", new { controller = "files", action = "index", prms = "" });
routes.MapRoute("ws", "~ws/{*prms}", new { controller = "ws", action = "index", prms = "" });
...
但是当我尝试得到结果我得到的错误说:“路由URL不能以'/'或'〜'字符开头,它不能包含'?'字符。”
据我所知,这些字符在ASP.net中有特殊的含义,但有可能以某种方式掩盖它们,至少代字号?我应该自己解析和路由请求吗?处理这类网址的最佳做法是什么?