Come fare un workflow sequenziale goto automatico alla prossima operazione
Domanda
Ho un flusso di lavoro sequenziale con un'OnWorkflowActivated e tre creare attività che si trovano all'interno di una sequenza. Attualmente, dopo l'OnWorkFlowActivated è chiamato e fatto l'esecuzione del codice, si chiamerà il primo dei tre creare attività. Tuttavia, una volta che il primo compito è fatto eseguire tutto il codice, esso non chiamare i prossimi due compiti. L'unico modo un compito può chiamare il compito successivo è chiamando il nome del metodo attuale, per es.
uploadToFTPTask_MethodInvoking(sender, e);
Vorrei il flusso di lavoro per automaticamente (senza l'input dell'utente) passare al prossimo compito a patto che tutto il codice nell'attività precedente è stata completata con successo. E se il codice non è stato completato, ha il rapporto flusso di lavoro che il flusso di lavoro non è stato completato. Questo flusso di lavoro è all'interno di Visual Studio e non SharePoint Designer.
Soluzione
I necessario avere una correlazione unico gettone per ogni attività, così come popolare il GUID compito in fase di esecuzione e associare il ListItemId in fase di esecuzione. Il codice all'interno gli sguardi metodo compito in questo modo:
UploadToFTPTask_TaskId1 = Guid.NewGuid();
UploadToFTPTask_ListItemId1 = workflowProperties.ItemId;
Con questo codice, non ho bisogno di chiamata sul prossimo compito con il nome del metodo, il flusso di lavoro è andato automaticamente al prossimo compito fintanto che aveva un TaskID unico e un ListItemId.