13
проф. В.К.Толстых, www.tolstykh.com Технологии Технологии разработки разработки Internet Internet - - приложений приложений ASP.NET ASP.NET приложения – приложения – локализация ресурсов приложения локализация ресурсов приложения Из цикла лекций «Технологии разработки Internet-приложений» для студентов 4-го курса кафедры Компьютерных технологий физического факультета Донецкого национального университета

Технологии разработки Internet -приложений

  • Upload
    nhung

  • View
    52

  • Download
    2

Embed Size (px)

DESCRIPTION

Из цикла лекций «Технологии разработки Internet-приложений» для студентов 4-го курса кафедры Компьютерных технологий физического факультета Донецкого национального университета. Технологии разработки Internet -приложений. ASP.NET приложения – локализация ресурсов приложения. - PowerPoint PPT Presentation

Citation preview

Page 1: Технологии разработки  Internet -приложений

проф. В.К.Толстых, www.tolstykh.com

Технологии Технологии разработки разработки InternetInternet--приложенийприложений

ASP.NET ASP.NET приложения –приложения – локализация ресурсов приложениялокализация ресурсов приложения

Из цикла лекций «Технологии разработки Internet-приложений» для студентов 4-го курса кафедры Компьютерных технологий физического факультета Донецкого национального университета

Page 2: Технологии разработки  Internet -приложений

Что такое локализация культуры?

Локализация — это процесс настройки приложения на работу в заданной региональной или

языковой среде. Основной частью локализации является перевод пользовательского

интерфейса на другой язык.

Один способ сделать это состоит в том, чтобы создать несколько вариантов страницы на

разных языках. Однако если исходная страница периодически меняется, то этот способ

может оказаться весьма трудоемким, с высокой вероятностью ошибок и сложным в

поддержке.

ASP.NET позволяет создавать страницу, которая может получать содержимое и прочие

данные, основываясь на языке, выбранном для браузера, или на явном выборе языка

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

и такие данные могут храниться в файлах ресурсов или в других источниках.

Файл ресурсов — это XML-файл, содержащий строки, которые требуется перевести на

другие языки. Файл ресурсов содержит пары «ключ-значение». Регистр букв в именах

ключей не учитывается.

Далее рассмотрим пример поддержки культуры посредством сессий.

Page 3: Технологии разработки  Internet -приложений

1. Определяем класс с нашими культурамиCulture.cs

Page 4: Технологии разработки  Internet -приложений

2. Создаём базовый класс для всех страницПереопределяем метод InitializeCulture базового класса

Page 5: Технологии разработки  Internet -приложений

Теперь все страницы приложения должны быть производными от BasePage:

В файл Global.asax в начале сессии устанавливаем начальное значение культуры :

Page 6: Технологии разработки  Internet -приложений

3. Интерфейс выбора языка

Для возврата дополнительного аргумента

обработчику события с культурой страницы

Page 7: Технологии разработки  Internet -приложений

4. При необходимости изменяем язык на странице

Сохраняем в сессии новую культуру, полученную от

щелчка на кнопке выбора языка

Page 8: Технологии разработки  Internet -приложений

Можем форматировать вид страницы в зависимости от культуры, например:

Можем кэшировать вывод страницы в зависимости от культуры ( VaryByCustom="lang"). Для этого в файл Global.asax добавляем:

Page 9: Технологии разработки  Internet -приложений

5.  Создаём ресурсы локализации – .resx

Существует понятие глобальных и локальных ресурсов.

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

global.resx , global.uk.resx, global.en.resx …

Доступ к глобальным ресурсам можно получить из любой страницы приложения и из любого

отдельного класса, размещённого в папке App_Code или Bin.

Локальные ресурсы размещаются в каталогах

App_LocalResources внутри каждой папки, где

необходимо реализовать локализацию страниц

приложения. Имя каждого файла-ресурса

создаётся на основе имени той страницы, которую

она локализует. Например, для двух культур

(языков) страницы organization.aspx в её же

каталоге должна быть папка App_LocalResources с двумя файлами:

Культура по умолчанию

Page 10: Технологии разработки  Internet -приложений

Пример файлов-ресурсов (русский, украинский) в редакторе Visual Studio 2012 для страницы organization.aspx

Page 11: Технологии разработки  Internet -приложений

5.  Web-элементы локализации

Authors Авторы <b>проекта</b>

locText.Text Текст… <a href="Default.aspx?petition">ссылка</a> …

Для визуализации в дизайнере

Page 12: Технологии разработки  Internet -приложений

Локализация свойств элементов, включая текст

Для локализации текста в CSS-свойстве HTML-элемента, в случае локальных ресурсов, лучше всего использовать конструкцию типа:

<h1 runat="server" id="h1" meta:resourcekey="h1" class="myh1">h1</h1>

Здесь текст для h1 размещается в виде InnerText тега с id="h1":

Для локализации нескольких свойств Web-элементов лучше всего использовать конструкции следующего типа, например, для свойств Text и NavigateUrl ссылки HyperLink:

<asp:HyperLink id="hlMyRef" runat="server" meta:resourcekey="hlMyRef">hlMyRef</asp:HyperLink>

где

Для визуализации в дизайнере

h1.InnerText Текст для h1… <i>курсив</i>…

Для визуализации в дизайнере

hlMyRef.Text Текст на ссылке hlMyRef…

hlMyRef.NavigateUrl MyRef.aspx

Page 13: Технологии разработки  Internet -приложений

Page.Title Web-личность

notAuthorized Пользователь не авторизован