Как локализовать имена и действия контроллера в приложении ASP.NET MVC? - PullRequest
10 голосов
/ 25 ноября 2010

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

Я хотел бы указать способ отображения строк, которые должны отображаться вместо имени контроллера и имени действия в URL-адресе, например, в ресурсе.файл.

Как это можно сделать в здравом уме?Заранее спасибо за вашу помощь!

РЕДАКТИРОВАТЬ:
Я все еще ищу способ сделать это.Любая помощь будет приветствоваться.
Есть ли какие-либо рамки или lib, уже реализующие это?

Ответы [ 4 ]

7 голосов
/ 25 ноября 2010

Я никогда не делал этого раньше, но не могли бы вы добавить запись в таблицу маршрутов для каждого языка, который вы хотите поддерживать? Все локализованные маршруты могут перенаправлять на маршрут на выбранном вами языке. Проверьте эти связанные вопросы:

Многоязычные веб-сайты с ASP.NET MVC

Как реализовать локализацию с маршрутами ASP.NET MVC?

4 голосов
/ 25 ноября 2010

Краткий ответ: нет.

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

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

Взгляните на это простое решение:

Перевод маршрутов (ASP.NET MVC и Webforms)

Вы также можете попробовать удивительное AttributeRouting проект, который я только что нашел!Вы можете получить его через NuGet .

0 голосов
/ 25 ноября 2010

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

Т.е. www.seller.com/catalogue/list/winterclothing www.seller.com/catalogue/list/summerclothing, где winterclothing и summerclothing будут перечисления.

Я бы сказал: это возможно, но не выполнимо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...