ASP.NET MVC 3 с учетом регистра URL - PullRequest
2 голосов
/ 01 марта 2012

Я делаю плохую вещь здесь.Я задаю вопрос, не пытаясь сперва попытаться понять, что кто-то знает простой способ сделать это.

Есть ли шанс, что мы сможем сделать систему маршрутизации ASP.NET MVC чувствительной к регистру?Я хотел бы, чтобы следующие два URL были разными:

example.com / a

example.com / A

У нас есть легкийисправьте или должны написать наш собственный обработчик для этого.

Ответы [ 3 ]

5 голосов
/ 01 марта 2012

Я не пробовал, но я думаю, что если вы используете ограничение маршрута регулярного выражения, которое соответствует только заглавным и строчным, это будет работать Я не думаю, что это хорошая идея.

3 голосов
/ 01 февраля 2013

Также обратите внимание, что параметры регулярного выражения, такие как чувствительность к регистру, могут быть изменены в середине регулярного выражения с помощью таких вещей, как:

...(?-i:nonCaseSensitiveBit)backToCaseInsensitive...

См. Документы Regex для полного чтения.

3 голосов
/ 01 марта 2012

Это кажется плохой идеей. Вы предполагаете, что люди никогда не будут касаться URL-адреса вручную, всегда нажимая на ссылки.

Кроме того, по умолчанию MSSQL нечувствителен к регистру, если предположить, что некоторые значения вашего маршрута привязаны к базе данных.

Я также готов поспорить, что все URL в поисковых системах строчные (догадка с окончанием).

EDIT

Все URL для платного поиска Google строчные.

Если вы ВСЕ ЕЩЕ настаиваете на этом:

Возможно, вам также понадобится реализовать собственный viewengine, который ищет представления с учетом регистра. Также настраиваемая фабрика контроллеров для поиска контроллеров, чувствительных к регистру.

...