WorkflowInstance Classe

Définition

Attention

The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*

Représente une instance de workflow.Represents a workflow instance.

public ref class WorkflowInstance sealed
public sealed class WorkflowInstance
[System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
public sealed class WorkflowInstance
type WorkflowInstance = class
[<System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")>]
type WorkflowInstance = class
Public NotInheritable Class WorkflowInstance
Héritage
WorkflowInstance
Attributs

Exemples

L'exemple de code suivant présente la création et le démarrage d'une WorkflowInstance dans un hôte du workflow.The following code example demonstrates how you can create and start a WorkflowInstance in a workflow host. Le code crée une instance du WorkflowRuntime, ajoute des services à l'exécution, puis présente la méthode recommandée pour créer un objet WorkflowInstance.The code creates an instance of the WorkflowRuntime, adds services to the runtime, and then demonstrates the recommended way to create a WorkflowInstance object. Le code initialise WorkflowInstance en appelant la méthode CreateWorkflow et lui passant le type créé précédemment.The code initializes WorkflowInstance by calling the CreateWorkflow method and passing the previously created type to it. La WorkflowInstance est démarrée avec l'appel de la méthode Start.The WorkflowInstance is started with the Start method call.

Cet exemple de code fait partie de l'exemple du Kit de développement logiciel Canceling a Workflow (SDK) et provient du fichier Program.cs.This code example is part of the Canceling a Workflow SDK sample from the Program.cs file. Pour plus d’informations, consultez annulation d’un flux de travail.For more information, see Canceling a Workflow.

Type type = typeof(SampleWorkflow1);
WorkflowInstance workflowInstance = workflowRuntime.CreateWorkflow(type);
workflowInstance.Start();
Dim workflowInstance As WorkflowInstance
workflowInstance = workflowRuntime.CreateWorkflow(GetType(SampleWorkflow))
workflowInstance.Start()

Remarques

Notes

Ce document décrit les types et les espaces de noms qui sont obsolètes.This material discusses types and namespaces that are obsolete. Pour plus d’informations, consultez Types dépréciés dans Windows Workflow Foundation 4.5.For more information, see Deprecated Types in Windows Workflow Foundation 4.5.

La classe WorkflowInstance expose les méthodes et propriétés qui peuvent être utilisées pour contrôler l'exécution d'une instance de workflow ; il s'agit essentiellement d'un proxy de l'instance de workflow réelle utilisée par le moteur d'exécution de workflow.The WorkflowInstance class exposes methods and properties that can be used to control the execution of a workflow instance; it is essentially a proxy to the actual workflow instance used by the workflow runtime engine. Un hôte ou un service peut envoyer une instruction au moteur d'exécution de workflow afin qu'il exécute des actions sur une instance de workflow en appelant les méthodes correspondantes contenues dans la classe WorkflowInstance.A host or a service can instruct the workflow runtime engine to perform actions on a workflow instance by calling the appropriate methods that are contained in the WorkflowInstance class. Si l'action demandée n'est pas valide, par exemple, si l'hôte appelle Load dans une instance de workflow déjà exécutée, le moteur d'exécution de workflow déclenchera une exception appropriée.If the requested action is not valid, for example, if the host calls Load on a workflow instance that has already completed, the workflow runtime engine will raise an appropriate exception.

Notes

Si une instance de workflow ne répond pas du fait qu'un appel sur l'application hôte ne renvoie rien, la seule méthode pour récupérer l'instance est de redémarrer l'exécution.If a workflow instance becomes unresponsive because a call on the host application does not return, the only way to recover the instance is to restart the runtime. Toutefois, si l'instance a été déchargée de force, interrompue ou suspendue, elle peut être poursuivie en appelant la méthode WorkflowInstance.Resume.However, if the instance has been forcibly unloaded, aborted, or suspended, it can be continued by calling the WorkflowInstance.Resume method.

Propriétés

InstanceId

Obtient l'identificateur unique de l'instance de workflow.Gets the unique identifier for the workflow instance.

WorkflowRuntime

Obtient le WorkflowRuntime pour cette instance de workflow.Gets the WorkflowRuntime for this workflow instance.

Méthodes

Abort()

Abandonne l'instance de workflow.Aborts the workflow instance.

ApplyWorkflowChanges(WorkflowChanges)

Applique des modifications à l'instance de workflow spécifiée par l'objet WorkflowChanges.Applies changes to the workflow instance specified by the WorkflowChanges object.

EnqueueItem(IComparable, Object, IPendingWork, Object)

Publie de façon synchrone un message dans la file d'attente de workflow spécifiée.Posts a message to the specified workflow queue synchronously.

EnqueueItemOnIdle(IComparable, Object, IPendingWork, Object)

Publie un message dans la file d'attente de flux de travail spécifiée lorsque le flux de travail est inactif.Posts a message to the specified workflow queue when the workflow is idle. EnqueueItemOnIdle(IComparable, Object, IPendingWork, Object) attend que le flux de travail atteigne un point d'inactivité et se met en file d'attente après avoir vérifié que le programmateur de flux de travail est inactif (autrement dit, aucune opération active n'est exécutée).EnqueueItemOnIdle(IComparable, Object, IPendingWork, Object) waits until the workflow reaches an idle point and enqueues after verifying that the workflow scheduler is idle (that is, no active operation is being executed).

Equals(Object)

Renvoie une valeur indiquant si l'objet spécifié est égal à la WorkflowInstance.Returns a value that indicates whether the specified object is equal to the WorkflowInstance.

GetHashCode()

Retourne le code de hachage de cette instance de workflow.Returns the hash code for this workflow instance.

GetType()

Obtient le Type de l'instance actuelle.Gets the Type of the current instance.

(Hérité de Object)
GetWorkflowDefinition()

Récupère l'activité racine pour cette instance de workflow.Retrieves the root activity for this workflow instance.

GetWorkflowNextTimerExpiration()

Renvoie le point suivant à l'heure planifiée pour la remise à cette WorkflowInstance d'un message du minuteur.Returns the next point in time that this WorkflowInstance is scheduled to be delivered a timer message.

GetWorkflowQueueData()

Obtient une collection d'objets WorkflowQueueInfo contenant les éléments en attente et les activités abonnées pour les files d'attente de workflow associées à cette instance de workflow.Gets a collection of WorkflowQueueInfo objects that contains the pending items and subscribed activities for the workflow queues associated with this workflow instance.

Load()

Charge une instance de workflow précédemment déchargée.Loads a previously unloaded workflow instance.

MemberwiseClone()

Crée une copie superficielle du Object actuel.Creates a shallow copy of the current Object.

(Hérité de Object)
ReloadTrackingProfiles()

Rechargez les profils de suivi de cette instance de workflow.Reload the tracking profiles for this workflow instance.

Resume()

Reprend l'exécution d'une instance de workflow précédemment suspendue.Resumes execution of a previously suspended workflow instance.

Start()

Démarre l'exécution de l'instance de workflow.Starts the execution of the workflow instance.

Suspend(String)

Interrompt l'instance de workflow.Suspends the workflow instance.

Terminate(String)

Met fin à l'instance de workflow de façon synchrone.Terminates the workflow instance in a synchronous manner.

ToString()

Retourne une chaîne qui représente l'objet actuel.Returns a string that represents the current object.

(Hérité de Object)
TryUnload()

Décharge l'instance de workflow de la mémoire dans le magasin de persistances lorsque l'instance est interrompue ou inactive.Unloads the workflow instance from memory to the persistence store when the instance is suspended or idle.

Unload()

Décharge l'instance de workflow de la mémoire dans le magasin de persistances.Unloads the workflow instance from memory to the persistence store. Cet appel se bloque jusqu’à la fin du travail planifié en cours ou à la fin de la portée d’une transaction.This call blocks until after the currently scheduled work is finished, or the end of a transaction scope.

S’applique à

Cohérence de thread

Ce type est thread-safe.This type is thread safe.