Задачи рабочего процесса SharePoint не ждут своего выполнения
-
10-12-2019 - |
Вопрос
Я создал рабочий процесс в Visual Studio, который содержит репликатор, который создает несколько задач для утверждения.Репликатор содержит последовательность действий, состоящую из createTask
, а while
петля с onTaskChanged
и completeTask
элементы.
Мой рабочий процесс ведет себя очень странно.А replicator_Initialized
правильно инициализирует InstanceData
который является IList
строк (т.е.утверждающие лица), replicator_ChildInitialized
также ведет себя так, как ожидалось, createTask_MethodInvoking
в последовательности действие выполняется нормально, и даже цикл isComplete
Метод проверяет для каждой из задач, что они не выполнены.Но тогда, onTaskChanged_Invoked
никогда не звонят, и то же самое касается completeTask_MethodInvoking
.Другими словами, у меня никогда не будет возможности перейти к списку задач рабочего процесса и утвердить задачи.После этого рабочий процесс аварийно завершает работу, потому что я пытаюсь ссылаться на задачи. AfterProperties
которые все null
конечно, потому что после никогда не было.
Кто-нибудь сталкивался с чем-то подобным?Как мне это исправить или хотя бы проанализировать?Например, я понятия не имею, где поставить точку останова, потому что кажется, что рабочий процесс просто пропускает некоторые части.Спасибо за всю помощь, я очень ценю это.
Решение
Я решил это.Проблема заключалась в том, что я определил некоторые поля в Workflow1.cs
файл типа SPListItem
, SPList
и SPUser
.Когда задачи были созданы, рабочий процесс зависал, и мне показалось, что он просто прошел без создания задач и ожидания их завершения.Удаление этих конкретных полей из Workflow1.cs
заставил все работать так, как ожидалось.
Я пришел к выводу, что Workflow1.cs
не допускает полей, которые не относятся к следующим типам:
- интервал
- логическое значение
- плавать
- двойной
- нить
- ДатаВремя
Возможно, так и было бы, если бы я добавил поле и сделал его сериализуемым (или весь Workflow1.cs
, не уверен).