【发布时间】:2012-09-15 01:15:06
【问题描述】:
我正在努力如何在我的 MVC 4 / ASP.NET 4.5 应用程序的 URL 中正确允许破折号/连字符...由于某种原因,MVC 将破折号转换为下划线,这不是我想要的。
在发布问题之前,我已经进行了大量搜索,但仍然找不到任何简单的解决方案。对于这样一个简单的配置,我发现的所有东西都显得格格不入。
基本上,我希望能够访问以下网址:
www.mysite.com/dashes-in-url
例如,我创建了一个名为:
dashes-in-urlController.cs
控制器的名称很好,并且允许在控制器名称中使用破折号。
但是,当我为上述控制器的索引创建视图时,它创建的视图为:
文件夹:/Views/dashes_in_url
该文件夹中有一个 Index.cshtml 文件 - 但它用下划线替换了我的破折号。
所以我必须访问网址:
www.mysite.com/dashes_in_url
在 URL 中使用下划线而不是破折号。
有谁知道任何优雅、简单的解决方案来实现我想要做的事情?
在这件事上的任何帮助将不胜感激,谢谢!
【问题讨论】:
-
愚蠢的问题...您是否尝试将视图重命名为“dashes-in-url.cshtml”?
-
你需要实现一个 HyphenatedRouteHandler - 谢天谢地很多人已经这样做了,所以在这里查看接受的答案stackoverflow.com/questions/2070890/… 或在谷歌搜索 HyphenatedRouteHandler 以获得更多示例
标签: asp.net-mvc url hyphenation