SharePoint - диалоговое окно «Строка подключения» во время события FeatureActivation

Кто-нибудь знает, возможно ли отобразить подсказку пользователю / администратору при активации или установке функции sharepoint?

Я пишу пользовательскую веб-часть, и она подключается к отдельной базе данных. Я хотел бы разрешить администратору выбирать или вводить строку подключения при установке файла .wsp или активации функции.

Я заглядываю внутрь события FeatureActivation и думаю об использовании класса SPWebConfigModification для фактической записи строки подключения в файлы web.config в ферме.

Я не хочу вручную редактировать web.configs или жестко кодировать строку в DLL.

Если у вас есть другие методы для обработки строк соединения внутри sharepoint, я бы также заинтересовался ими.

12.08.2008 13:57:04
2 ОТВЕТА
РЕШЕНИЕ

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

  1. Я предполагаю, что строка подключения будет отличаться для каждой установки, поэтому вы не сможете напрямую включить ее в Решение.
  2. Я предполагаю, что вы не могли программно построить это во время установки.

Поэтому вам нужен какой-то способ получить пользовательский ввод. Вот несколько вариантов:

  1. Это может быть свойство веб-части, хотя это будет означать его настройку каждый раз, когда веб-часть добавляется, и вам нужно будет затем сохранить эти параметры по отдельности.
  2. Вы можете создать свой собственный экран настроек _layouts (хороший пост: http://community.zevenseas.com/Blogs/Robin/archive/2008/03/17/lcm-creating-custom-application-page-and-using-the -propertybag-more-detail.aspx ), и оттуда пользователи могут поддерживать свойство, сохраняя его либо в пакете веб-свойств, либо внутри Web.Config. Я стараюсь избегать использования Web.Config там, где могу, но если вы действительно хотите пойти по этому пути, УБЕДИТЕСЬ, что вы используете класс SPWebConfigModification (Прочтите этот замечательный блог: http://www.crsw.com/mark/Lists/ Posts / Post.aspx? ID = 32 )
  3. Наконец, метод, который я часто использую, - это сохранение информации о конфигурации в списке SharePoint. У Криса О'Брайена есть отличная основа для этого здесь: http://www.codeplex.com/SPConfigStore

Надеюсь, это поможет, Даниэль

1
18.12.2017 12:24:12

Звучит хорошо. Я посмотрю на эти возможные решения.

Я не думаю, что # 1 будет работать, так как я развертываю несколько веб-частей внутри одного решения, которые все используют одну и ту же connectionString.

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

При поиске решения я наткнулся на другой метод.

Если вы покопаетесь в их коде, мне кажется, что они создали установщик, который принимает значения, специфичные для приложения, добавляет значения в файл FeatureTemplate.xml и передает их объекту SPFeatureReceiverProperties в Reciever.

Я собирался начать заниматься этим методом, но я думаю, что №3 будет лучше.

Спасибо Кит

0
24.01.2013 10:16:49