Локализация семейства сайтов SharePoint во время выполнения? - PullRequest
2 голосов
/ 05 августа 2009

Итак, у меня есть требование изменить языковой стандарт семейства сайтов во время выполнения.

Я развертываю файл .resx в папке App_GlobalResources веб-приложений, затем использую:

<asp:Literal runat="server" Text="<%$Resources:MyResource,MyLocalizedStringID%>" />

для вставки правильной локализованной строки.

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

Я знаю, что с ASP.Net мне нужно изменить CurrentCulture, что я делал раньше, но как мне сделать это с SharePoint? и как я могу заставить мое семейство сайтов загружать правильный файл ресурсов?

Я мог бы разместить раскрывающийся список на странице и позволить пользователю выбрать язык, а затем изменить CurrentCulture, а также я мог бы создать еще одну запись «Настройки сайта», которая делает то же самое.

Но в идеале я хотел бы сделать это с помощью региональных настроек.

Есть идеи?

Ответы [ 3 ]

2 голосов
/ 05 августа 2009

Да, я знаю, что это не меняет CurrentUICulture работающего потока ASP.Net, поэтому правильные файлы .resx не загружаются.

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

<script runat="server">
    protected override void  InitializeCulture()
    {
        System.Threading.Thread.CurrentThread.CurrentUICulture = Microsoft.SharePoint.SPContext.Current.Web.Locale;
        base.InitializeCulture();
    }
</script>
0 голосов
/ 05 августа 2009

Я только что опубликовал сообщение в блоге об этом решении под названием «Локализация пользовательского интерфейса SharePoint с использованием файлов ресурсов ASP.Net»

http://leedale.wordpress.com/2009/08/05/localizing-a-sharepoint-ui-using-asp-net-resource-files/

0 голосов
/ 05 августа 2009

Вы можете изменить региональные настройки в Central Admin -> Управление приложениями -> Общие настройки веб-приложения

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