Добавление новых веб-частей в уже развернутое решение
-
09-12-2019 - |
Вопрос
У меня есть проект WebPart, построенный в Visual Studio 2010, и он успешно развернут для моей производственной среды. Я недавно должен был внести некоторые изменения в веб-панель, а также необходимо добавить новый поддерживающий веб-сайт в проект (на основе природы веб-панелей и их взаимосвязи друг с другом, я думал, что это имеет смысл сохранить оба в том же Проект и, следовательно, часть такой же функции).
В любом случае, после внесения изменений, которые я развернул на сервере, используя команду «Обновление-spsolution». Однако, хотя изменения, которые я сделал на уже существующий веб-сайт, был немедленно виден на любых страницах, где был развернут веб-сайт, я не могу развернуть вновь созданный веб-сайт, который был частью функции, на самом деле я не мог даже найти его в галерее веб-частей.
Это было только после этого, когда я удалил новый веб-сайт из существующего проекта и создал совершенно новый проект, совершенно новый файл WSP и развертывание нового решения, а затем активируя новую функцию, которую я смог развернуть новый веб-сайт.
Мне интересно, есть ли что-то, что я делаю не так при запуске команды «Обновление-spsolution», которая приводит к моему недавному добавленному веб-параму, не доступно?
Решение
Вам нужно будет повторно активировать функцию, которую вы обновили.После переактивации веб-часть должна отображаться в галерее.
Другие советы
Если вы хотите сделать это «правильным» способом, вы должны были использовать обновление функций.
К сожалению, не просто, но дает вам много контроля над тем, что произойдет, когда вы развертываете новую версию функции.
В вашем случае это будет вовлечено бы:
- .
- Добавляют файлы элементов .xml для новых веб-частей внутри
<ApplyElementManifests>
внутри<UpgradeActions>
в функции .xml - Обновление решения с использованием
update-spsolution
, как вы сделали - Обновление функций (можно сделать с использованием SharePoint 2010 Обновление установки )
Для получения дополнительной информации о возможности обновления см. См. Серия Chris O'Briens, начиная с Обновление функций (часть 1) - Основы
Несмотря на то, что он может показаться как сверхугольника для простого проекта, который я все еще думаю, что это правильно, чтобы пов-из-за следующих причин:
- .
- Это хорошая практика, чтобы войти, и вы всегда должны думать, что обновляется в ваши функции
- Если ваша функция что-то делает, при активации / деактивированном, как добавление данных или очистки, то активировать / деактивировать, не может быть опцией
- Это может быть намного проще найти все места для обновления функции (построение), чем на петлю, хотя и искать, где функция активирована, а затем деактивировать / активировать
Я нашел обновление WSP может быть немного сложно.Иногда выполнение полного генеракодицетагкода / Uninstall-SPSolution
поможет, если вы испытываете странное поведение.
В моем опыте развертывания формы Visual Studio обычно выходит без сцепки.Из-за этого я постараюсь соответствовать его процессу развертывания как можно ближе, если у меня есть проблема развертывания.Ниже приведено описание конфигурации развертывания «по умолчанию» для проекта SharePoint в Visual Studio:
... упаковывает файл wsp, перерабатывать пул приложения, убирает Предыдущая версия решения, добавляет решение, активирует все Особенности и запускает командную строку после развертывания.
Вам нужно будет повторно активировать веб-части из Gallery Web Part Перейти на место действия сайта> Настройки сайта в галереях> веб-частей В веб-частях галерея документы> Новый документ Вы утратите новые веб-части, выберите новые веб-части и нажмите «Заполнить галерею» В новых свойства редактирования веб-части Измените группу на заказ и нажмите Сохранить После этого вы все настроите новые веб-части в пользовательских веб-частях
При деактивации, а затем активируйте и, наконец, утилизируйте пул приложений решить мою проблему. Теперь веб-часть отображается в галерее.