Как развернуть модификации web.config в веб-приложении Sharepoint?

StackOverflow https://stackoverflow.com/questions/620978

  •  05-07-2019
  •  | 
  •  

Вопрос

У меня есть сайт в Sharepoint 2007. Мы используем wsp для развертывания наших проектов. Мы можем развернуть dll, пользовательские элементы управления, функции, но я не знаю, как включить новые строки в web.config.

Какой из возможных способов внести изменения в web.config?

Другое дело, как я могу включить ресурсы (resx) в wsp?

Это было полезно?

Решение

Редактирование файла web.config вручную в многосерверной ферме - плохая идея. Обеспечение синхронизации файлов web.config на каждом WFE быстро превратится в кошмар.

Использование класса SPWebConfigModification для управления изменениями web.config по всей ферме является хорошей идеей, поскольку изменения будут сохраняться в базе данных конфигурации SharePoint и автоматически отправляться на каждый сервер в ферме.

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

Другие советы

есть очень простой способ добавить безопасные записи управления через Solution. Следующий фрагмент, добавленный в manifest.xml, внесет соответствующие изменения в файл web.config. Чтобы установить другие значения, вы должны сделать это в приемнике объектов, используя SPWebConfigModification class.

<Assemblies>
  <Assembly ...>
     <SafeControl Namespace=".." Assembly="..." Type="..." Safe="True" />
  </Assembly>
  ....
</Assemblies>

Кроме того, если вы думаете об использовании appSettings из web.config для значений конфигурации вашего сайта, у вас есть и другие варианты. По разным причинам web.config не всегда может быть лучшим местом для размещения ваших значений - по крайней мере, если предполагается, что «суперпользователь» и т. Д. Сможет изменить их позже. Для этого вы могли бы вместо этого использовать функцию хранилища конфигурации, которая также масштабируется по всей ферме для нескольких интерфейсных серверов и т. Д.:

http://www.sharepointnutsandbolts.com /2008/05/introducing-sharepoint-config-store-for.html

Что касается файлов web.config ...

Web.config - это документ XML, который содержит параметры конфигурации для веб-приложения. Он находится в корневом каталоге веб-приложения, поэтому для SharePoint он обычно находится в папке C: \ Inetpub \ wwwroot \ wss \ VirtualDirectories \ SharePoint80, где SharePoint80 - это имя вашего веб-приложения.

Вручную вносить изменения в файл web.config безопасно, если вы сохраняете теги и разделы в правильном порядке. Посмотрите эту статью .

В него также можно вносить программные изменения, это пост должен показать вам, как.

Надеюсь, это поможет.

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

Кроме того, манипулирование web.config напрямую гарантирует, что у вас есть полный web.config в вашей системе управления версиями. Если вы используете API для внесения изменений, все, что у вас будет в системе контроля версий, это набор кода на C #, который, как вы надеетесь, не содержит ошибок!

Мой совет - не связываться с какими-либо ручными изменениями кода. Вместо этого, сделайте все «по-SharePoint», поместив изменения в каталог 12 \ Config как описано в документации Microsoft по SharePoint .

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top