SharePoint - предоставление свойств URL через CAML? - PullRequest
0 голосов
/ 11 февраля 2010

Есть ли решение для следующего, которого мне не хватает в SharePoint / CAML. Обратите внимание, что я приведу конкретный пример использования URL-адреса на странице перенаправления (тип содержимого функции публикации), но проблема более обширна, чем предоставление страницы перенаправления. Это действительно вопрос везде, где можно задать поле / свойство «URL» (веб-части, страницы и т. Д.).

Как и большинство разработчиков SharePoint, у меня есть набор сред: «DEV», «QA», «STAGING» и «PROD». У меня есть несколько "локальных" сайтов в каждой среде:

www.mysite.com us.mysite.com uk.mysite.com и т.д ...

Сайты в каждой среде, кроме PROD, имеют префикс среды, связанный с ними, например:

us.dev.mysite.com us.qa.mysite.com us.staging.mysite.com

Вероятно, довольно распространенная установка ...

У меня есть необходимость перенаправить пользователей на страницу, которая существует только на сайте "www", с каждого конкретного сайта. Мне нужно перенаправление, чтобы перенаправить пользователей на соответствующий сайт www для среды, в которой они находятся. Например, если я нахожусь в dev в локали uk и посещаю страницу перенаправления, я должен быть перенаправлен на сайт www dev .

Я надеялся использовать «страницу перенаправления» из SharePoint для достижения этой цели. Я собирался настроить функцию (с элементами модуля) для предоставления экземпляра типа контента «Страница перенаправления». Это позволяет мне указать URL для перенаправления пользователей. Однако, если я инициализирую страницу через CAML, мне нужен способ убедиться, что перенаправление подходит для указанной среды. Я не могу доверять себе или другим разработчикам, чтобы они не меняли URL каждый раз, когда мы собираем и разворачиваем wsp в каждой среде.

Есть ли в SharePoint / CAML какой-либо способ замены маркера на основе какого-либо переключателя при указании значений поля / свойства?

1 Ответ

0 голосов
/ 11 февраля 2010

Я не уверен, что полностью понимаю ваши требования, но для разнообразия сред (Dev, QA, Staging, Prod) я бы использовал функцию Криса О'Брайена «Config Store»: http://www.sharepointnutsandbolts.com/2008/05/introducing-sharepoint-config-store-for.html Это создаст простой список, в котором вы можете хранить информацию, относящуюся к текущей среде.

Это в сочетании с расширениями stsadm Гэри Лапойнта: http://stsadm.blogspot.com/2007/08/stsadm-commands_09.html

Вы можете использовать это, чтобы отправить правильные значения для каждой среды в «хранилище конфигурации», а в своем коде запросить в «списке хранилища настроек» значение среды.

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

В вашем случае у вас может быть запись в хранилище конфигураций с именем 'MyPrefixUrl' и вызов ее значения + относительный путь для перенаправления пользователя в нужное место.

Надеюсь, это вас не смущает.

...