ASP.NET MVC 路由问题
我因路由问题而度过了一段糟糕的时光。希望你能帮助我。
以下是有效的 URL:
http://www.example.com/Stories/Action-Name/StoryName
http://www.example.com/Stories/Action-Name/
(它会自动重定向到 ~/Stories/Action-Name/StoryName,这就是我想要的。
但是,如果我删除尾随的“/”(即 http:// www.example.com/Stories/Action-Name)然后它重定向到:http://www.example.com/StoryName
我不知道这是如何或为什么发生的。
这是我在 Global.asax 中设置的路线:
routes.MapRoute("SurvivorStoriesRedirect", "Stories/Action-Name/{id}", new {
controller = "Stories",
action = "Action-Name",
id = UrlParameter.Optional
});
请让我知道我做错了什么,
谢谢
-
不知道我是怎么搞砸的,但我刚刚添加了这个:
routes.MapRoute("SurvivorStoriesRedirect", "Stories/{action}/{id}", new {
controller = "Stories",
action = "Index",
id = UrlParameter.Optional
});
并删除了任何其他路线 。 “故事”控制器,一切似乎都有效。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可能需要创建一个路由来处理默认操作调用。试试这个:
You might need to create a route to handle default action calls. Try this:
从 routedebugger ://haacked.com/archive/2010/10/06/introducing-nupack-package-manager.aspx" rel="nofollow">NuGet 或从 Phil 的 post 并且您将能够查看不会显示 < 的匹配项em>为什么,但您会看到如何并很快弄清楚。
Grab Phil Haack's routedebugger from NuGet or download the zip from Phil's post and you'll be able to view the matches which won't show you the why but you'll see the how and soon figure it out.