NativeActivity Classe

Définition

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.Abstract base class for custom activities that implement execution logic using the Execute(NativeActivityContext) method, which has full access to the runtime's features.

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
NativeActivity
Dérivé

Exemples

L'exemple de code suivant montre comment créer une classe qui hérite de NativeActivity<TResult>.The following code sample demonstrates creating a class that inherits from NativeActivity<TResult>. Cet exemple provient de l’exemple composite personnalisé à l’aide d’une activité Native .This example is from the Custom Composite using Native Activity sample.

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.When implemented in a derived class, creates a new instance of the derived class.

Propriétés

CacheId

Obtient l'identificateur du cache qui est unique dans la portée de la définition de flux de travail.Gets the identifier of the cache that is unique within the scope of the workflow definition.

(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.Gets or sets a value that indicates whether the activity can cause the workflow to become idle.

Constraints

Obtient une collection d'activités Constraint qui peuvent être configurées afin de fournir la validation pour l'objet Activity.Gets a collection of Constraint activities that can be configured to provide validation for the 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.Gets or sets an optional friendly name that is used for debugging, validation, exception handling, and tracking.

(Hérité de Activity)
Id

Obtient l'identificateur qui est unique dans la portée de la définition de flux de travail.Gets an identifier that is unique in the scope of the workflow definition.

(Hérité de Activity)
Implementation

Logique d'exécution de l'activité.The execution logic of the activity.

ImplementationVersion

Obtient ou définit la version d'implémentation de l'activité.Gets or sets the implementation version of the 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.When implemented in a derived class, takes actions in response to the activity being aborted.

CacheMetadata(ActivityMetadata)

Non implémenté.Not implemented. Utilisez plutôt la méthode CacheMetadata(NativeActivityMetadata).Use the CacheMetadata(NativeActivityMetadata) method instead.

CacheMetadata(NativeActivityMetadata)

Crée et valide une description des arguments, variables, activités enfants et délégués de l’activité.Creates and validates a description of the activity's arguments, variables, child activities, and activity delegates.

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é.When implemented in a derived class, runs logic to cause graceful early completion of the activity.

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.Determines whether the specified object is equal to the current object.

(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é.When implemented in a derived class, runs the activity's execution logic.

GetHashCode()

Sert de fonction de hachage par défaut.Serves as the default hash function.

(Hérité de Object)
GetType()

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

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle de l'objet Object actuel.Creates a shallow copy of the current Object.

(Hérité de Object)
OnCreateDynamicUpdateMap(NativeActivityUpdateMapMetadata, Activity)

Déclenche un événement en créant une carte pour la mise à jour dynamique.Raises an event when creating a map for the dynamic update.

OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity)

Déclenche un événement en créant une carte pour la mise à jour dynamique.Raises an event when creating a map for the dynamic update.

ShouldSerializeDisplayName()

Indique si la propriété DisplayName doit être sérialisée.Indicates whether the DisplayName property should be serialized.

(Hérité de Activity)
ToString()

Retourne un objet String qui contient les propriétés Id et DisplayName de l'objet Activity.Returns a String that contains the Id and DisplayName of the Activity.

(Hérité de Activity)
UpdateInstance(NativeActivityUpdateContext)

Met à jour l'instance de NativeActivity.Updates the instance of NativeActivity.

S’applique à