Версия SharePoint WSP

Кто-нибудь пробовал версию WSP в SharePoint 2010?

Спасибо,


person Faiz    schedule 19.05.2010    source источник


Ответы (3)


Было бы полезно уточнить в вашем вопросе ".wsp".

Как упоминал Фло, если вы сохраните версию сборки той же, но измените AssemblyFileVersion, вы можете обновить сборки в своем решении WSP, используя

STSADM -o upgradeolution ...

См. Мой ответ на SO - Как я могу использовать управление версиями сборки с подстановочными знаками?

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

person Ryan    schedule 19.05.2010

Спасибо всем за ваши ответы. У меня две проблемы:

а. Предположим, мой wsp развертывает веб-часть с версией сборки 1.0.0.0 и версией файла сборки также 1.0.0.0. Теперь, через несколько дней, мне нужно развернуть последнюю версию webpart. Версия сборки теперь будет 2.0.0.0, а версия файла сборки также будет 2.0.0.0. Я заметил, что даже если я уберу и повторно разверну wsp, файлы .webpart, которые находятся в галерее веб-частей, всегда показывают версию сборки как 1.0.0.0. Я предполагаю, что это связано с тем, что отзыв wsp не удалит файл .webpart и не отключит функцию. Таким образом, остается единственный вариант - написать код деактивации функции для удаления файла .webpart из галереи веб-частей. Это будет в значительной степени эффективным, поскольку мне нужно будет пройти через все семейства сайтов развернутого веб-приложения, чтобы определить по коду (форма Windows в качестве установщика) семейство сайтов, в котором активирована функция, и деактивировать ее.

б. Мне нужно запросить версию dll webpart для некоторой операции. Я подумал, что будет хорошо, если мы сможем версию wsp и оставить версию wsp такой же, как и dll веб-части. Это поможет мне оставаться в контексте SharePoint для определения версии dll веб-части (вместо того, чтобы запрашивать версию dll).

Спасибо

person Faiz    schedule 20.05.2010
comment
re: a) См. мой ответ и, в частности, ссылку «Как я могу использовать подстановочную сборку версий», в ней есть все, что вам нужно. Вы не должны изменять версию сборки для незначительных изменений версии (так же, как, например, ВСЕ пакеты услуг / обновления пакета SharePoint 2007 и т. Д. Составляют 12.0.0.0), вы используете для этого FileVersion - тогда не нужно возиться с деактивацией и т. д. необходимо. - person Ryan; 21.05.2010
comment
Также вы можете прочитать FAQ (вверху справа) для StackOverflow - это не дискуссионный форум, и ваши пояснения лучше отредактировать в вашем вопросе. - person Ryan; 21.05.2010

WSP на самом деле не является версией.
Однако вы можете добавить в него компоненты:

  • Функция или веб-части с разными именами (FeatureV1, FeatureV2 ...)
  • Сборка с использованием стандартной сборки версий (WebpartV1 использует сборку 1.0.0, WebPartV2 использует 1.1.0 и т. Д.)
  • ...
person Nico    schedule 19.05.2010
comment
Вы должны знать, что если вы измените версию сборки (а не версию файла сборки), вы не сможете просто заменить сборку веб-части, вам придется удалить ее со всех сайтов и добавить снова. Если вы оставите версию сборки нетронутой и просто измените версию файла сборки, вы сможете избежать этой проблемы. - person Flo; 19.05.2010
comment
Просто чтобы прояснить комментарии Фло, он не говорит о добавлении / удалении с помощью STSADM, его удалении, а затем добавлении и настройке веб-части на каждой отдельной странице веб-части, на которой она использовалась - настоящая боль! Вы можете использовать AssemblyBindingRedirect, но это тоже не рекомендуемый подход. - person Ryan; 19.05.2010