MVC ASP.NET переключают язык, как реализовать?

После некоторого исследования я понял, что мне нужно запустить:

npm install -g karma@canary phantomjs karma-phantomjs-launcher

После того, как я запустился, я вернулся в свой файл karma-unit.tpl.js и вместо karma-phantomjs я изменил это Карма-фантому-пускачу.

Теперь, когда я выполняю команду типа grunt build, я не получаю сообщение об ошибке phantomJS

21
задан miccet 29 May 2009 в 20:45
поделиться

3 ответа

Есть ли причина, по которой вы используете переменную сеанса? более распространенным решением является включение языкового кода в маршрут, например blah.com/en/info или blah.com/jp/info (для английского и японского языков)

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

в этой статье объясняется, как включить язык в домен, т.е. en.blah.com или jp.blah.com: http://blog.maartenballiauw.be/post/2009/05/20/ASPNET-MVC-Domain-Routing.aspx

ОБНОВЛЕНО: Здесь простой пример включения кода языка в маршрут URL.

Измените маршрут по умолчанию, включив параметр языка:

routes.MapRoute(
"Default", 
"{language}/{controller}/{action}/{id}", 
new { language = "en", controller = "Home", action = "Index", id = "" }
);

Добавьте ссылки для каждого языка на главную страницу:

19
ответ дан 29 November 2019 в 21:35
поделиться

Мне подходит следующий подход:

Я использую файлы cookie и свой собственный движок для локализации Все, что вам нужно, - это разместить ссылку на странице, которая будет перенаправлять на что-то вроде этого:

public class LanguageController : Controller
{
    //
    // GET: /Language/

    public void Change(string id)
    {
        var cuka = new HttpCookie("lang", id + "");
        cuka.Expires = DateTime.Now.AddYears(10);
        System.Web.HttpContext.Current.Response.Cookies.Add(cuka);

        if (Request.UrlReferrer.IsNotNull())
            Response.Redirect(Request.UrlReferrer.AbsoluteUri);
        else
            Response.Redirect("/");
    }

}

}

Если вас интересует этот движок, дайте мне знать.

7
ответ дан 29 November 2019 в 21:35
поделиться

Вот простое решение, как включить выбор разных URL-адресов.

1
ответ дан 29 November 2019 в 21:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: