Поделиться через


Локализация решений SharePoint

Процесс подготовки приложений для их использования по всему миру называется локализацией.Локализация представляет собой адаптацию ресурсов к условиям определенного языка и региональных параметров.Дополнительные сведения см. в разделе Глобализация и локализация приложений.В данном разделе представлен обзор процесса локализации решения SharePoint.

Для локализации решения необходимо удалить из кода жестко запрограммированные строки и перенести их в файлы ресурсов.Файл ресурсов представляет собой XML файл c расширением .resx.Файл ресурсов содержит переведенные версии строк, используемых в решении.Дополнительные сведения см. в разделе Ресурсы в приложениях.

ПримечаниеПримечание

Добавляйте только строковые ресурсы в файл ресурсов решения SharePoint.Хотя редактор ресурсов позволяет добавлять не строковые ресурсы, такие ресурсы не развертываются в SharePoint.

Файлы ресурсов

Существует три типа файлов ресурсов: по умолчанию, не зависящий от языка и языковой.

Тип файла ресурсов

Описание

Default

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

Не зависящий от языка

Файл ресурсов, содержащий строки, локализованные под определенный язык, но не региональные параметры.Например, "fr" для французского языка.

Языковой

Файл ресурсов, содержащий строки, локализованные под определенный язык и региональные параметры.Например, "fr-CA" для французского языка, используемого в Канаде.

Дополнительные сведения см. в разделе Иерархическая организация ресурсов для локализации.

Определить файл ресурсов по умолчанию в проектах SharePoint, что разработка ведется в Visual Studio выберите Инвариантный язык (Инвариантная страна) в списке язык и региональные параметры диалогового окна Добавить ресурс при добавлении файла ресурсов. 

Локализация решений Visual Studio SharePoint

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

Каждая строка файла ресурсов имеет уникальный идентификатор.В каждом файле ресурсов используйте одинаковые идентификаторы для переведенных строк.Например, если "String1" является идентификатором первой строки файла ресурсов по умолчанию, используйте такой же идентификатор для первой строки языковых файлов ресурсов.

Обычно, в приложениях Visual Studio SharePoint локализации подлежат три области: компоненты, разметка страницы ASPX и код.Для наглядности, в следующих разделах приведено решение SharePoint, локализуемое на немецкий и японский языки.По умолчанию используется английский язык.

Ee696750.collapse_all(ru-ru,VS.110).gifЛокализация компонентов

Для локализации компонентов необходимо заменить жестко запрограммированное название и описание возможности выражением, которое ссылается на переведенное название и строку в локализованном файле ресурсов.Такая замена выполняется в Конструкторе компонентов в Visual Studio.Дополнительные сведения см. в разделе Практическое руководство. Локализация компонента.

Для локализации компонентов с английского языка на немецкий и японский, следует добавить в проект три элемента проекта файла ресурсов: по одному для английского, немецкого и японского языков.Файлы ресурсов для компонентов нельзя использовать для локализации разметки ASPX или кода. Для них необходимо создать отдельные файлы ресурсов.

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

$Resources:String ID

Ресурсы компонента в Visual Studio всегда называются "Ресурсы".Если выбран язык, отличный от языка, инвариантного языка и региональных параметров Идентификатор добавить к имени файла ресурсов. Например, при добавлении инвариантный файл ресурсов функции языка (по умолчанию), то вызов Resources.resx.При добавлении языкового ресурса компонента с помощью языка и региональных параметров "Японский" (Япония), файл получает имя Resources.ja-JP.resx.Имена файла ресурсов компонента присваиваются автоматически и не могут быть изменены.

Область ресурсов компонента является локальной для компонента, к которому они добавляются.Чтобы создать ресурсы, которые могут быть использованы любым файлом компонента или элемента решения, вместо файла ресурсов компонента добавьте элемент проекта Глобальные файлы ресурсов.Элемент проекта Глобальные файлы ресурсов находится в папке 2010 под именем SharePoint в диалоговом окне Добавление нового элемента.Глобальные файлы ресурсов развертываются в папке \Resources корневой папки SharePoint.

Дополнительные сведения см. в разделе Пошаговое руководство. Локализация приложения SharePoint в Visual Studio.

Ee696750.collapse_all(ru-ru,VS.110).gifЛокализация разметки страницы ASPX

Для локализации страниц ASP.NET добавляется 3 элемента проекта файла ресурсов в проект: одно для английского, один для немецкого и один для японского. Если не нужно локализовать код в дополнение к разметке, то можно вместо добавления глобальные файлы ресурсов.

Введите имя для файла ресурсов языка по умолчанию.Локализованным файлам ресурсов присвойте тоже имя с добавлением определенного языка и региональных параметров Идентификатор.Например, MyAppResources.de-DE.resx для немецкого языка и MyAppResources.ja-JP.resx для японского.

Для каждого файла ресурсов задайте свойству Тип развертывания значение AppGlobalResource.В таком случае файлы ресурсов развертываются в папке App_GlobalResources, где они становятся доступными для всех страниц ASPX и элементов управления решения.Папка App_GlobalResources находится по адресу C:\inetpub\wwwroot\wss\VirtualDirectories\<port number>\App_GlobalResources.

ПримечаниеПримечание

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

Файлы ресурсов разметки ASPX также могут быть использованы для локализации кода.При использовании ресурсов для локализации кода вместе с разметкой ASPX, оставьте установке свойства "Действие при построении" каждого файла значение "Внедренный ресурс", чтобы скомпилировать ресурс во вспомогательную сборку.Однако при использовании файлов ресурсов для локализации разметки, можно изменить "Действие при построении" на "Содержимое" для предотвращения компиляции файла в основную сборку приложения.

Замените все жестко запрограммированные строки свойства разметки страниц ASPX и элементов управления на выражение в следующем формате:

<asp:<class> runat="server" Text="<%$Resources:<Resource File Name>, <String ID>%>" />

Например:

<asp:Button ID="btn1" runat="server" onclick="btn1_Click" Text="<%$Resources:Resource1,String7%>"></asp:Button>

Для ASPX, в качестве текста используйте выражение в следующем формате:

<asp:literal ID="<ID>" runat="server" Text="<%$Resources:<Resource File Name>, <String ID>%>" />

Например:

<asp:literal ID="Literal1" runat="server" Text="<%$Resources:Resource1, String9%>" />

Дополнительные сведения см. в разделах Практическое руководство. Локализация разметки ASPX и Пошаговое руководство. Локализация приложения SharePoint в Visual Studio.

Ee696750.collapse_all(ru-ru,VS.110).gifЛокализация кода

В дополнение к локализации строк компонента и разметки ASP.NET, также необходимо локализовать строки сообщений и ошибок, которые появляются в коде решения.Локализованные информационные сообщения и сообщения об ошибках, содержащихся во вспомогательных сборках. Вспомогательные сборки содержат строки, которые отображаются для пользователей, например сообщения текст Пользовательский интерфейс и вывода, как исключения.

Visual Studio использует стандартную модель "звезда" платформы .NET Framework.Концентратор, или основная сборка программы, содержит языковые ресурсы по умолчанию.Спицы, или вспомогательные сборки, содержат языковые ресурсы.Дополнительные сведения см. в разделе Упаковка и развертывание ресурсов.Вспомогательные сборки компилируются из файлов ресурсов (.resx).При добавлении в проект и пакет решения языковых файлов ресурсов, Visual Studio компилирует файлы ресурсов во вспомогательные сборки с именем Имя проекта.resources.dll.

Как и в случае с разметкой ASPX, локализация кода приложения SharePoint происходит посредством добавления в проект отдельных элементов проекта файла ресурсов: одного для языка по умолчанию и по одному для каждого локализованного языка.Однако как упоминалось ранее, уже существующие файлы ресурсов для локализации разметки ASPX можно использовать и для локализации кода.Чтобы создать файлы ресурсов, языковому файлу ресурсов по умолчанию присвойте любое имя с расширением .resx.Локализованным файлам ресурсов присвойте тоже имя с добавлением определенного языка и региональных параметров Идентификатор.Для каждого файла ресурсов свойству "Действие при построении" присвойте значение "Внедренный ресурс", чтобы начать создание вспомогательных сборок ресурсов.

Чтобы создать вспомогательные сборки, постройте проект и на вкладке Дополнительно в Конструкторе проектов добавьте файлы, в качестве дополнительных сборок.При добавлении сборок в начале пути вставьте папку Идентификатор языка и региональных параметров, например, de-DE\Имя элемента проекта.resources.dll.Это допускает содержание в пакете файлов, с одинаковыми именами.

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

HttpContext.GetGlobalResourceObject("<Resource File Name>", "<String ID>")

Дополнительные сведения см. в разделах Практическое руководство. Локализация кода и Пошаговое руководство. Локализация приложения SharePoint в Visual Studio.

Ee696750.collapse_all(ru-ru,VS.110).gifЛокализация кода веб-части

Веб-части содержат пользовательскую функцию редактора свойств, которая включает атрибуты кода, использующие жестко запрограммированные строки, такие как WebDisplayName, категория и WebDescription.Чтобы заменить значения строк для данных атрибутов, создайте отдельный класс, наследуемый из класса атрибута.В этих классах задайте свойство атрибута.Свойство атрибута зависит от базового класса.Например, свойством атрибута WebDisplayName является DisplayNameValue, а свойством атрибута WebDescription — DescriptionValue.

Чтобы получить локализованное значение для идентификатора строки, в производном классе, сошлитесь на идентификатор строки из файла ресурсов и объекта ResourceManager.Верните это значение в атрибут редактора свойств.Дополнительные сведения см. в разделе Пошаговое руководство. Локализация приложения SharePoint в Visual Studio.

См. также

Задачи

Практическое руководство. Локализация компонента

Практическое руководство. Локализация разметки ASPX

Практическое руководство. Локализация кода

Практическое руководство. Добавление файла ресурсов

Практическое руководство. Использование файла ресурсов для задания локализованных имен, свойств и разрешений

Другие ресурсы

Пошаговое руководство. Локализация приложения SharePoint в Visual Studio