Медленная работа UserPicker в мультидоменной среде MOSS 2007.
Элемент управления выбора пользователей является одним из наиболее важных компонентов платформы MOSS 2007.
Не для кого не секрет, что иногда возникают дополнительные требования к работе данного компонента, такие как:
- Ограничение возможности выбора пользователей доменом или лесом;
- Ускорение работы кнопки проверки имени (Check Names).
Первая проблема с успехом лечится с помощью команды:
stsadm -o setproperty -url https://<server:port> -pn peoplepicker-searchadforests -pv "forest:contoso.corp.com;domain:bar.contoso.corp.com", <LoginName>, <Password>
Вторая проблема сложнее, т.к. по каким-то причинам вышеперечисленная команда не влияет на эту кнопку в этом элементе управления, что приводит к тайм-аутам:
Для решения этой проблемы можно рекомендовать способ, который позволяет запретить непосредственный ввод значений пользователем.
Для этого нужно:
- Перейти в каталог C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\TEMPLATE\CONTROLTEMPLATES\ ;
- Открыть файл DefaultTemplates.ascx;
- Найти строку <SharePoint:RenderingTemplate ID="UserField" runat="server"> ;
- Изменить строку <SharePoint:PeopleEditor ID="UserField" runat="server" ValidatorEnabled="true" /> на <SharePoint:PeopleEditor ID="UserField" runat="server" ValidatorEnabled="true" AllowTypeIn=”False” />.
Готово. Теперь хотя пользователь не сможет вводить имена пользователей напрямую, это не будет вызывать тайм-аут обработки запроса.
Выбирайте то, что в Вашем случае важнее.
Описание свойства можно найти здесь.