asp.net-mvc-2 – ASP.NET MVC路由和URL.Action
在我的一个asp.net mvc 2视图中,我有以下声明
window.location.href = '<% = Url.Action("Index","Feature",new {id=""}) %>/' + $("#ProductId").val(); 可以看出$(“#ProductId”).val()只能从客户端操作计算出来,所以外部url.Action 我的路线如下图所示: public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.IgnoreRoute("{*allaspx}",new { allaspx = @".*.aspx(/.*)?" }); routes.IgnoreRoute("{*favicon}",new { favicon = @"(.*/)?favicon.ico(/.*)?" }); routes.IgnoreRoute("{*allimages}",new {allimages = @".*.jpg(/.*)?"}); routes.MapRoute( "Default",// Route name "{controller}.mvc/{action}/{id}",// URL with parameters new { controller = "Home",action = "Index",id = UrlParameter.Optional } // Parameter defaults ); routes.MapRoute( "DefaultIndex",// Route name "{controller}.mvc/{id}",// URL with parameters new { controller = "Home",action = "Index"} // Parameter defaults ); routes.MapRoute("Root","",new { controller = "Home",id = "" }); } Url.Action的请求失败,因为路由认为“action”是“id” 如何确保“DefaultIndex”中的路由配置已经过验证且url是 键>>值 编辑2 图2: 编辑1-路线订单 我几乎以为我通过改变路线顺序来解决它 routes.MapRoute( "DefaultIndex",id = UrlParameter.Optional } // Parameter defaults ); routes.MapRoute( "Default",id = UrlParameter.Optional } // Parameter defaults ); routes.MapRoute("Root",id = "" }); 它确实有效 但在同一页面上的帖子失败了 http://localhost:61000/Product.mvc/List ****历史**** 一直在使用$(“#ProductId”).val(); 总是工作,虽然我不得不在发布到服务器域名[虚拟目录别名] /更改从开发到测试到生产时更改所有脚本 试图简化它: 先前有以下声明: window.location.href =’<%= Url.Action(“Index”,“Feature”})%> /’$(“#ProductId”).val(); 会导致多个Id值 http://localhost:61000/Feature.mvc/9a1347dc-60b0-4b3b-9570-9ed100b6bc6a/3c5941e4-cb25-4d6f-9117-9ed100b4ca91 它将现有路线{id}映射到Url.Action(“索引”,“功能”} 导致NoMatch 介绍 新的{id =“”}来绕过它. 解决方法
请尝试使用Url.RouteUrl
window.location.href = '<%= Url.RouteUrl("Default",new { @Controller = "Feature",@Action = "Index"}) %>/' + $("#ProductId").val(); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – 如何从搜索引擎中完全隐藏网站?
- asp.net – uk格式的.net 4.0中的日期格式
- asp.net-mvc – 在asp.net mvc主页面的导航列表中添加“活动
- asp.net – VS2012 Crystal Report Viewer组树隐藏
- 在ASP.NET MVC中为JavaScript生成动作URL
- 在asp.net应用程序中打开/关闭连接的好习惯?
- 我应采取哪些措施来保护我的多层ASP.NET应用程序?
- asp.net – GetHashCode在这里只是货物崇拜吗?
- asp.net-mvc – ASP.NET MVC中UpdateModel的正确行为是什么
- asp.net-mvc-3 – MVC3,多文件上传,模型绑定