Изменить установленную функцию SharePoint - PullRequest
0 голосов
/ 12 января 2010

Я написал последовательный рабочий процесс в SharePoint в нашей среде разработки. После тестирования мы решили развернуть этот рабочий процесс как функцию в промежуточной среде. Мы сделали следующее:

  1. скопировал сборку со строгим именем в GAC, используя gacutil

  2. скопировал файл feature.xml и workflow.xml в WebServerExtensions / 12 / templates / features / someFolder

  3. установленная функция (команда stsadm)

  4. активированная функция (команда stsadm)

Все работало точно так, как запланировано, и рабочий процесс вел себя правильно Проблема заключалась в том, что мы решили что-то изменить в коде (сообщение не было самоочевидным), поэтому на машине для разработки мы обновили сообщение в соответствии с запросом и пересобрали проект.
Проблема в том, что мы не можем найти способ правильно избавиться от предыдущей версии этого рабочего процесса / функции.

Чтобы развернуть обновление, мы:

  1. деактивировал и удалил функцию (команды stsadm), также удалил из GAC.

  2. увеличена версия сборки

  3. выполнил шаги с 1 по 4 сверху.

При использовании рабочего процесса мы по-прежнему получаем первое сообщение, но не можем найти способ отобразить новое сообщение.
Чего нам не хватает?

Ответы [ 2 ]

0 голосов
/ 12 января 2010

Кажется, проблема была в файле Workflow.xml. Поскольку я увеличил AssemblyFileVersion, и только замена dll в GAC не работала, я проверил два xml-файла: Feature и Workflow, чтобы увидеть, какой из них не распознал новую dll (если это так). Файл workflow.xml содержит ссылку на старую версию. Я обновил это, установил и активировал функцию снова, и теперь она отлично работает.
Спасибо за вашу поддержку!

0 голосов
/ 12 января 2010

Вся логика рабочего процесса «живет» внутри сборки кода, которую вы запускаете. Это означает, что вы можете удалить старую версию DLL (не меняйте номера версий сборок, вместо этого используйте AssemblyFileVersion ) из GAC и замените ее новой версией.

Имейте в виду, однако, что если вы изменили рабочий процесс в конструкторе, запущенные экземпляры старой версии рабочего процесса "зависнут" и никогда не завершатся. Попросите пользователей завершить работу WF-ов перед обновлением кода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...