NativeActivity Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Clase base abstracta para actividades personalizadas que implementan lógica de ejecución mediante el método Execute(NativeActivityContext), que tiene acceso total a las características del 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
- Herencia
- Derivado
Ejemplos
En la siguiente muestra de código se presenta cómo crear una clase que hereda de NativeActivity<TResult>. Este ejemplo procede del ejemplo compuesto personalizado mediante la actividad nativa .
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);
}
}
Constructores
NativeActivity() |
Cuando se implementa en una clase derivada, crea una nueva instancia de esta. |
Propiedades
CacheId |
Obtiene el identificador de la memoria caché que es único dentro del ámbito de definición del flujo de trabajo. (Heredado de Activity) |
CanInduceIdle |
Obtiene o establece un valor que indica si la actividad puede hacer que el flujo de trabajo quede inactivo. |
Constraints |
Obtiene una colección de las actividades Constraint que se puede configurar para proporcionar validación para Activity. (Heredado de Activity) |
DisplayName |
Obtiene o establece un nombre descriptivo opcional que se utiliza para la depuración, la validación, el control de excepciones y el seguimiento. (Heredado de Activity) |
Id |
Obtiene un identificador que es único dentro del ámbito de definición del flujo de trabajo. (Heredado de Activity) |
Implementation |
Lógica de ejecución de la actividad. |
ImplementationVersion |
Obtiene o establece la versión de implementación de la actividad. |
ImplementationVersion |
Obtiene o establece la versión de la implementación usada. (Heredado de Activity) |
Métodos
Abort(NativeActivityAbortContext) |
Cuando se implementa en una clase derivada, realiza acciones en respuesta a la actividad que se va a anular. |
CacheMetadata(ActivityMetadata) |
Sin implementar. Use el método CacheMetadata(NativeActivityMetadata) en su lugar. |
CacheMetadata(NativeActivityMetadata) |
Crea y valida una descripción de los argumentos, las variables, las actividades secundarias y delegados de la actividad. |
Cancel(NativeActivityContext) |
Cuando se implementa en una clase derivada, ejecuta la lógica para producir una finalización precoz y correcta de la actividad. |
Equals(Object) |
Determina si el objeto especificado es igual que el objeto actual. (Heredado de Object) |
Execute(NativeActivityContext) |
Cuando se implementa en una clase derivada, ejecuta la lógica de ejecución de la actividad. |
GetHashCode() |
Sirve como la función hash predeterminada. (Heredado de Object) |
GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
MemberwiseClone() |
Crea una copia superficial del Object actual. (Heredado de Object) |
OnCreateDynamicUpdateMap(NativeActivityUpdateMapMetadata, Activity) |
Genera un evento al crear una asignación para la actualización dinámica. |
OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity) |
Genera un evento al crear una asignación para la actualización dinámica. |
OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity) |
Genera un evento al crear una asignación de actualización dinámica. (Heredado de Activity) |
ShouldSerializeDisplayName() |
Indica si la propiedad DisplayName se debe serializar. (Heredado de Activity) |
ToString() |
Devuelve un objeto String que contiene las propiedades Id y DisplayName del objeto Activity. (Heredado de Activity) |
UpdateInstance(NativeActivityUpdateContext) |
Actualiza la instancia de NativeActivity. |