Пользовательский web.config для веб-части asp.net в sharepoint 2010 - PullRequest
1 голос
/ 29 ноября 2011

Основание: Я создал веб-часть ASP.NET для развертывания на сайте Sharepoint 2010. Эта веб-часть использует внешнюю веб-службу, службу WCF, которая размещена где-то еще, а не на том же компьютере, что и сайт Sharepoint. Веб-части устанавливаются на сервере sharepoint с использованием CAB-файла, созданного с помощью проекта развертывания.

Проблема: Моя проблема заключается в том, что у меня есть настройки привязки веб-службы в файле web.config моего решения для веб-части ASP.NET, которые мне нужно изменить в зависимости от того, какой клиент его использует, поэтому я должен иметь возможность изменить адрес привязки после установки ( или во время).

Другое: Я видел решения, использующие SPWebConfigModification, но у меня нет локальной установки Sharepoint, так что это не вариант. Я также видел чистое решение на C #, где адрес конечной точки жестко задан в сборке, но это не позволит мне изменить адрес после компиляции веб-части. Лучшим способом было бы иметь внешний txt / xml-файл, который я могу использовать из своей веб-части для получения адреса конечной точки, или умный способ обновления sharepoint web.config без использования SPWebConfigModification.

так ...

У кого-нибудь есть отличное решение моей проблемы?

Ответы [ 2 ]

1 голос
/ 29 ноября 2011

Можно ли использовать пользовательские свойства веб-части, которые будут содержать информацию о конечной точке WCF?Таким образом, вы сможете настроить свои веб-части после их добавления на страницу.Свойства доступны из кода веб-части, поэтому вы можете сгенерировать прокси wcf во время выполнения без пользовательских файлов конфигурации в решении.

эта статья может помочь вам с пользовательскими свойствами http://www.lamber.info/post/2010/05/21/How-do-I-create-custom-properties-in-Visual-Web-Parts.aspx

0 голосов
/ 29 ноября 2011

Редактирование web.config почти всегда является неправильным местом для размещения чего-то подобного.

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

SO - Как правильно хранить глобальные переменные уровня сайта на сайте SharePoint?

...