WorkflowInstance.Abort Metodo

Definizione

Interrompe l'istanza del flusso di lavoro.

public:
 void Abort();
public void Abort ();
member this.Abort : unit -> unit
Public Sub Abort ()

Eccezioni

Il motore di runtime del flusso di lavoro non è in esecuzione.

Esempio

Nell'esempio seguente viene illustrata la chiamata ad Abort su un'istanza del flusso di lavoro di tipo Workflow1.

//Create a workflow runtime
WorkflowRuntime workflowRuntime = new WorkflowRuntime();
//Create a workflow instance
WorkflowInstance instance = workflowRuntime.CreateWorkflow(typeof(Workflow1));
//Start the instance
instance.Start();
//Abort the instance
instance.Abort();
'Create a workflow runtime
Dim workflowRuntime As New WorkflowRuntime()
'Create a workflow instance
Dim workflowInstance As WorkflowInstance = workflowRuntime.CreateWorkflow(GetType(Workflow1))
'Start the instance
workflowInstance.Start()
'Abort the instance
workflowInstance.Abort()

Commenti

L'istanza del flusso di lavoro viene interrotta in modo sincrono; ovvero, il metodo viene restituito dopo l'interruzione dell'istanza del flusso di lavoro. Il motore di runtime del flusso di lavoro invalida l'istanza del flusso di lavoro in memoria e cancella la proprietà WorkBatch. Se l'istanza del flusso di lavoro ha utilizzato un servizio di persistenza, tutto il lavoro eseguito dall'ultimo punto di persistenza viene eliminato. Dopo l'interruzione dell'istanza del flusso di lavoro, il motore di runtime del flusso di lavoro genera l'evento WorkflowAborted. È possibile chiamare il metodo GetWorkflow per ricaricare l'istanza del flusso di lavoro e avviarla dall'ultimo punto di persistenza.

Abort è diverso dal metodo Terminate poiché mentre Abort cancella l'istanza del flusso di lavoro in memoria e può essere riavviato dall'ultimo punto di persistenza, Terminate cancella l'istanza del flusso di lavoro in memoria e informa il servizio di persistenza che l'istanza è stata cancellata dalla memoria. Per SqlWorkflowPersistenceService, questo vuole dire che ogni informazione sullo stato dell'istanza del flusso di lavoro viene eliminata dal database al momento della chiusura. Non sarà possibile ricaricare l'istanza del flusso di lavoro da un punto di persistenza precedentemente archiviato.

Si applica a