Как я могу ограничить видимость функций в SharePoint 2010? - PullRequest
1 голос
/ 26 июля 2010

У меня есть решение SharePoint 2010 (ферма), которое содержит именно эту функцию:
Эта функция относится к области сайта.
Видимость функции установлена ​​на "true".
Цель развертывания сборки установлена ​​на«Веб-приложение».
Функция содержит одну веб-часть.

После добавления этого решения в хранилище решений я могу развернуть решение в определенном веб-приложении.Однако после развертывания решения в ОДНОМ ОДНОМ веб-приложении эта функция фактически отображается во ВСЕХ семействах сайтов!Я бы предположил, что эта функция должна быть видна только в семействах сайтов, размещенных в этом ОДНОМ веб-приложении?Попытка активировать функцию и добавить веб-часть на страницу (как ожидается) завершится неудачей во всех семействах сайтов других веб-приложений (сборка не может быть загружена).

Это ошибка SP2010?Есть ли обходной путь?Я просто хочу ограничить видимость функции для определенных семейств сайтов ...

Пожалуйста, помогите!Спасибо

1 Ответ

3 голосов
/ 26 июля 2011

Jan, Все ли ваши веб-приложения работают на одном сервере WFE? Если у вас есть несколько WFE, вы можете сделать это:

  1. Развертывание функции в веб-приложении A в WFE A.
  2. Эта функция должна отображаться в разделе «Функции семейства сайтов» веб-приложения A.
  3. Теперь перейдите к веб-приложению B в WFE B. Когда вы посмотрите на Функции семейства сайтов в веб-приложении B, вашей функции там быть не должно.

Если ваши веб-приложения работают на том же сервере , то они используют ту же папку 14-Hive / TEMPLATES / FEATURES . После развертывания функции только в одном веб-приложении на этом сервере папка компонентов находится в папке TEMPLATES / FEATURES этого сервера, что делает эту функцию видимой в компонентах семейства сайтов всех приложений на этом сервере.

Если у вас есть несколько приложений, работающих на одном и том же WFE, и если вы по-прежнему хотите ограничить доступ к этой функции, возможно, вам придется поискать решения для песочницы.

Другая возможность заключается в том, что вы делаете эту функцию скрытой ( видимость отключена - она ​​никогда не будет отображаться ни в каких функциях семейства сайтов), и просто попросите администраторов SP выполнить развертывание командной строки / командлета вашей функции для это одно веб-приложение.

-Gabe

...