NativeActivity Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Classe de base abstraite conçue pour les activités personnalisées implémentant la logique d’exécution à l’aide de la méthode Execute(NativeActivityContext), qui dispose d’un accès total aux fonctionnalités du runtime.
public ref class NativeActivity abstract : System::Activities::Activity
public abstract class NativeActivity : System.Activities.Activity
type NativeActivity = class
inherit Activity
Public MustInherit Class NativeActivity
Inherits Activity
- Héritage
- Dérivé
Exemples
L'exemple de code suivant montre comment créer une classe qui hérite de NativeActivity<TResult>. Cet exemple provient de l’exemple Composite personnalisé à l’aide d’une activité native .
public sealed class MySequence : NativeActivity
{
Collection<Activity> children;
Collection<Variable> variables;
Variable<int> currentIndex;
CompletionCallback onChildComplete;
public MySequence()
: base()
{
this.children = new Collection<Activity>();
this.variables = new Collection<Variable>();
this.currentIndex = new Variable<int>();
}
public Collection<Activity> Activities
{
get
{
return this.children;
}
}
public Collection<Variable> Variables
{
get
{
return this.variables;
}
}
protected override void CacheMetadata(NativeActivityMetadata metadata)
{
//call base.CacheMetadata to add the Activities and Variables to this activity's metadata
base.CacheMetadata(metadata);
//add the private implementation variable: currentIndex
metadata.AddImplementationVariable(this.currentIndex);
}
protected override void Execute(NativeActivityContext context)
{
InternalExecute(context, null);
}
void InternalExecute(NativeActivityContext context, ActivityInstance instance)
{
//grab the index of the current Activity
int currentActivityIndex = this.currentIndex.Get(context);
if (currentActivityIndex == Activities.Count)
{
//if the currentActivityIndex is equal to the count of MySequence's Activities
//MySequence is complete
return;
}
if (this.onChildComplete == null)
{
//on completion of the current child, have the runtime call back on this method
this.onChildComplete = new CompletionCallback(InternalExecute);
}
//grab the next Activity in MySequence.Activities and schedule it
Activity nextChild = Activities[currentActivityIndex];
context.ScheduleActivity(nextChild, this.onChildComplete);
//increment the currentIndex
this.currentIndex.Set(context, ++currentActivityIndex);
}
}
Constructeurs
NativeActivity() |
Lors de l'implémentation dans une classe dérivée, crée une instance de la classe dérivée. |
Propriétés
CacheId |
Obtient l'identificateur du cache qui est unique dans la portée de la définition de flux de travail. (Hérité de Activity) |
CanInduceIdle |
Obtient ou définit une valeur qui indique si l'activité peut faire passer le flux de travail à l'état inactif. |
Constraints |
Obtient une collection d'activités Constraint qui peuvent être configurées afin de fournir la validation pour l'objet Activity. (Hérité de Activity) |
DisplayName |
Obtient ou définit un nom convivial utilisé pour le débogage, la validation, la gestion des exceptions et le suivi. (Hérité de Activity) |
Id |
Obtient l'identificateur qui est unique dans la portée de la définition de flux de travail. (Hérité de Activity) |
Implementation |
Logique d'exécution de l'activité. |
ImplementationVersion |
Obtient ou définit la version d'implémentation de l'activité. |
ImplementationVersion |
Obtient ou définit la version de l'implémentation utilisée. (Hérité de Activity) |
Méthodes
Abort(NativeActivityAbortContext) |
Lors de l'implémentation dans une classe dérivée, entreprend des actions en réponse à l'activité qui est abandonnée. |
CacheMetadata(ActivityMetadata) |
Non implémenté. Utilisez plutôt la méthode CacheMetadata(NativeActivityMetadata). |
CacheMetadata(NativeActivityMetadata) |
Crée et valide une description des arguments, variables, activités enfants et délégués de l’activité. |
Cancel(NativeActivityContext) |
Lors de l'implémentation dans une classe dérivée, exécute la logique permettant de provoquer une fin anticipée appropriée de l'activité. |
Equals(Object) |
Détermine si l'objet spécifié est égal à l'objet actuel. (Hérité de Object) |
Execute(NativeActivityContext) |
Lors de l’implémentation dans une classe dérivée, exécute la logique d’exécution de l’activité. |
GetHashCode() |
Fait office de fonction de hachage par défaut. (Hérité de Object) |
GetType() |
Obtient le Type de l'instance actuelle. (Hérité de Object) |
MemberwiseClone() |
Crée une copie superficielle du Object actuel. (Hérité de Object) |
OnCreateDynamicUpdateMap(NativeActivityUpdateMapMetadata, Activity) |
Déclenche un événement en créant une carte pour la mise à jour dynamique. |
OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity) |
Déclenche un événement en créant une carte pour la mise à jour dynamique. |
OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity) |
Déclenche un événement lors de la création d'une carte de mise à jour dynamique. (Hérité de Activity) |
ShouldSerializeDisplayName() |
Indique si la propriété DisplayName doit être sérialisée. (Hérité de Activity) |
ToString() |
Retourne un objet String qui contient les propriétés Id et DisplayName de l'objet Activity. (Hérité de Activity) |
UpdateInstance(NativeActivityUpdateContext) |
Met à jour l'instance de NativeActivity. |