当呈现的操作链接作为查询字符串返回时,我如何修复MVC3的路由问题
How do I fix a routing issue with MVC3 when rendered action links get returned as querystrings?
这可能是一个简单的路由问题,但在快速谷歌之后,我没有点击我在路由上做错了什么。
当使用SignalR时,路由MapConnection会破坏默认的MVC路由渲染。
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.IgnoreRoute("{*favicon}", new { favicon = @"(.*/)?favicon.ico(/.*)?" });
// default MVC
routes.MapRoute("Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
// SignalR routing
routes.MapConnection<EventConnection>("echo", "echo/{*operation}");
在这个顺序中,当SignalR js客户端连接到/echo/url时,我得到404。
如果我交换默认的MVC和SignalR路由,SignalR js客户端连接到/echo/url和SignalR函数正确,但路由被错误地重写时,呈现给视图,即
/echo?action=Index&controller=Home
我错过了什么明显的吗?我正在寻找排除回声路径的排他约束,但这似乎是沉重的,肯定有一个更简单的方法?
另外,我试过使用Regex约束,就像下面的问题一样,它不起作用。
MVC2 Routing with WCF ServiceRoute: Html。ActionLink渲染错误链接!
我最终在SignalR代码中修复了这个问题,使用下面的答案并提交了一个pull请求。
Html。当添加非mvc路由时,ActionLink会构造错误的链接
https://github.com/SignalR/SignalR/pull/19相关文章:
- 在指令控制器中使用$attrs时出现问题
- 将PHP变量传递给jQuery时遇到问题
- Canvas Html5绘图应用程序,移动画布会导致重大问题
- 参数变量出现ngTable指令问题
- 剑道网格jQuery动画()问题
- 我的jQuery插件参数没有正确启动,遇到了问题
- Phonegap-(安卓/iphone)多个图像的图像库出现问题
- TableExport jquery插件:文件名和扩展名问题
- JavaScript Pub/Sub属性访问问题
- JavaScript异步问题
- 如何解决Yii中的页面刷新问题
- Safari(Mac OS)上的jQuery平滑滚动问题
- jqGrid树网格问题
- 使用正则表达式评估电子邮件地址时出现性能问题
- visual studio和Asp.net mvc3项目的问题
- MVC3大型文件上传程序问题
- Javascript(Jquery)调用MVC3 Controller/Action/ID的URL路由问题,返回404,
- 问题显示twitter状态/user_timeline MVC3.Net
- MVC3应用程序和javascript问题
- 当呈现的操作链接作为查询字符串返回时,我如何修复MVC3的路由问题