Sdílet prostřednictvím


NativeActivity Třída

Definice

Abstraktní základní třída pro vlastní aktivity, které implementují logiku Execute(NativeActivityContext) spouštění pomocí metody , která má úplný přístup k funkcím modulu 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
Dědičnost
NativeActivity
Odvozené

Příklady

Následující ukázka kódu ukazuje vytvoření třídy, která dědí z NativeActivity<TResult>. Tento příklad je z ukázky vlastního složeného s použitím nativní aktivity .

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);  
    }  
}  

Konstruktory

NativeActivity()

Při implementaci v odvozené třídě vytvoří novou instanci odvozené třídy.

Vlastnosti

CacheId

Získá identifikátor mezipaměti, který je jedinečný v rámci oboru definice pracovního postupu.

(Zděděno od Activity)
CanInduceIdle

Získá nebo nastaví hodnotu, která označuje, zda aktivita může způsobit pracovní postup nečinný.

Constraints

Získá kolekci Constraint aktivit, které lze nakonfigurovat tak, aby poskytovaly ověřování pro Activity.

(Zděděno od Activity)
DisplayName

Získá nebo nastaví volitelný popisný název, který se používá pro ladění, ověřování, zpracování výjimek a sledování.

(Zděděno od Activity)
Id

Získá identifikátor, který je jedinečný v oboru definice pracovního postupu.

(Zděděno od Activity)
Implementation

Logika provádění aktivity.

ImplementationVersion

Získá nebo nastaví verzi implementace aktivity.

ImplementationVersion

Získá nebo nastaví verzi použité implementace.

(Zděděno od Activity)

Metody

Abort(NativeActivityAbortContext)

Při implementaci v odvozené třídě provádí akce v reakci na aktivitu, která je přerušena.

CacheMetadata(ActivityMetadata)

Není implementováno. Místo toho použijte metodu CacheMetadata(NativeActivityMetadata) .

CacheMetadata(NativeActivityMetadata)

Vytvoří a ověří popis argumentů aktivity, proměnných, podřízených aktivit a delegátů aktivit.

Cancel(NativeActivityContext)

Při implementaci v odvozené třídě spustí logiku, která způsobí řádné brzké dokončení aktivity.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
Execute(NativeActivityContext)

Při implementaci v odvozené třídě spustí logiku provádění aktivity.

GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetType()

Type Získá z aktuální instance.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
OnCreateDynamicUpdateMap(NativeActivityUpdateMapMetadata, Activity)

Vyvolá událost při vytváření mapy pro dynamickou aktualizaci.

OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity)

Vyvolá událost při vytváření mapy pro dynamickou aktualizaci.

OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity)

Vyvolá událost při vytváření dynamické mapy aktualizace.

(Zděděno od Activity)
ShouldSerializeDisplayName()

Určuje, zda DisplayName má být vlastnost serializována.

(Zděděno od Activity)
ToString()

Vrátí hodnotu , String která obsahuje Id a DisplayName objektu Activity.

(Zděděno od Activity)
UpdateInstance(NativeActivityUpdateContext)

Aktualizace instance NativeActivity.

Platí pro