sudevsu Ответов: 0

Динамическое изменение языка веб-сайта с помощью культуры пользовательского интерфейса не работает


Здравствуйте Эксперты,

мы пытаемся иметь наше существующее aSP.net веб-сайт также переведен на испанский язык.
Для этого я создал язык класса, который наследует System.Web.UI.Page. (Потому что все страницы контента инхереитированы из
System.Web.UI.Page

Так что я создал язык класс наследует System.веб.Пользовательского интерфейса.Страницы и затем изменили мою страницу контента язык класс)

Мой языковой класс имеет следующий код

Public Class Language
  Inherits System.Web.UI.Page
  Protected Overrides Sub InitializeCulture()
    Dim cookie As HttpCookie = Request.Cookies("Lang")
    Dim lang As String = String.Empty
    If cookie IsNot Nothing AndAlso cookie.Value IsNot Nothing Then
      lang = cookie.Value
    End If
    If Not lang.Contains("Select") Then

      Dim culLan As CultureInfo = CultureInfo.CreateSpecificCulture(lang)
      Thread.CurrentThread.CurrentUICulture = culLan
      Thread.CurrentThread.CurrentCulture = culLan
    End If
    MyBase.InitializeCulture()
  End Sub
End Class 


Одна из страниц контента выглядит следующим образом
Partial Class Products
  Inherits Language


Теперь моя переменная lang в языковом классе имеет значение es-MX - Spanish, и при отладке этой функции ошибок нет. Однако моя страница ASPX не меняется с английского на испанский .

Кто-нибудь может пожалуйста помочь мне ?

Это должно касаться только динамического переключения языка. У меня нет статических одиночных html / aspx-страниц . Так что, пожалуйста, поправьте меня, в чем же здесь ошибка?

Что я уже пробовал:

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

AnvilRanger

А что вы используете или планируете использовать в качестве источника перевода? Вы просто сидите в настройках культуры пользовательского интерфейса. Это не приведет к автоматическому изменению языка страницы. Вам нужен какой-то ресурс, который говорит, что для eng-US вот мои значения, а для es-MX вот соответствующие значения.

sudevsu

Я этого не знаю. Я был в заблуждении, что установка культуры автоматически изменит страницу. Мне было бы легче, если бы вы сказали, как это сделать? Например, мой сайт имеет 100 страниц контента, 70 пользовательских элементов управления и вложенные мастер-страницы, это означает, что я должен создать каждое значение на английском и соответствующем испанском языках. Это большая работа. Есть ли какой-нибудь плагин, который может сделать это без установки всех файлов ресурсов? Я попробовал google translator, но не могу избавиться от панели инструментов google, которая говорит переключиться на оригинал / перевод на испанский .

0 Ответов