Обычно я не ставил заголовок вроде этого в вопросе, но я уверен, что это ошибка (или по дизайну?)
Я создал совершенно новое веб-приложение ASP.NET MVC 3.
Затем я перешел на страницу /Home/About.
URL-адрес этой страницы:
http://localhost:51419/Home/About
Затем я изменил URL-адрес на это:
http://localhost:51419/(A(a))/Home/About
И страница работала? Рассматривая значения маршрута, controller = Home, Action = About. Он проигнорировал первую часть?
И если я посмотрю на все ссылки в источнике:
<link href="/(A(a))/Content/Site.css" rel="stylesheet" type="text/css" />
<script src="/(A(a))/Scripts/jquery-1.5.1.min.js" type="text/javascript"></script>
<script src="/(A(a))/Scripts/modernizr-1.7.min.js" type="text/javascript"></script>
<li><a href="/(A(a))/">Home</a></li>
<li><a href="/(A(a))/Home/About">About</a></li>
Посмотрите, как она поддерживала эту первую часть? Он, как движок маршрутизации, считает его частью домена или что-то еще?
У меня такое ощущение, что это регулярное выражение, потому что если я изменил URL-адрес на:
http://localhost:51419/(A(a))/Home/About
(например, изменили прописную букву A на нижний регистр)
Это 404's.
Может ли кто-нибудь пролить свет на это? Это ошибка или дизайн?