NativeActivity Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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
- Odvozené
Příklady
Následující ukázka kódu ukazuje vytvoření třídy, která dědí z NativeActivity<TResult>. Tento příklad pochází z vlastní složené položky pomocí ukázky 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
| Name | Description |
|---|---|
| NativeActivity() |
Při implementaci v odvozené třídě vytvoří novou instanci odvozené třídy. |
Vlastnosti
| Name | Description |
|---|---|
| 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, že pracovní postup bude nečinný. |
| Constraints |
Získá kolekci Constraint aktivit, které lze nakonfigurovat pro zajištění ověření 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. |
Metody
| Name | Description |
|---|---|
| Abort(NativeActivityAbortContext) |
Při implementaci v odvozené třídě provede 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ů, proměnných, podřízených aktivit a delegátů aktivity. |
| Cancel(NativeActivityContext) |
Při implementaci v odvozené třídě spustí logiku, která způsobí řádné předčasné dokončení aktivity. |
| Equals(Object) |
Určuje, zda je zadaný objekt roven 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í funkce hash. (Zděděno od Object) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (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. |
| ShouldSerializeDisplayName() |
Určuje, zda DisplayName má být vlastnost serializována. (Zděděno od Activity) |
| ToString() |
String Vrátí hodnotu, která obsahuje Id hodnotu a DisplayName hodnotu Activity. (Zděděno od Activity) |
| UpdateInstance(NativeActivityUpdateContext) |
Aktualizuje instanci .NativeActivity |