Exportar (0) Imprimir
Expandir todo
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

NativeActivity (Clase)

Clase base abstracta para las actividades personalizadas que implementan lógica de ejecución usando el método de Execute , que tiene acceso completo a las características en tiempo de ejecución.

System.Object
  System.Activities.Activity
    System.Activities.NativeActivity
      Más...

Espacio de nombres:  System.Activities
Ensamblado:  System.Activities (en System.Activities.dll)

public abstract class NativeActivity : Activity

El tipo NativeActivity expone los siguientes miembros.

  NombreDescripción
Método protegidoNativeActivityCuando se implementa en una clase derivada, crea una nueva instancia de la clase derivada.
Arriba

  NombreDescripción
Propiedad protegidaCacheIdObtiene el identificador de la memoria caché que es único dentro del ámbito de definición del flujo de trabajo. (Se hereda de Activity).
Propiedad protegidaCanInduceIdleObtiene o establece un valor que indica si la actividad puede hacer que el flujo de trabajo para volverse inactiva.
Propiedad protegidaConstraintsObtiene una colección de las actividades Constraint que se puede configurar para proporcionar validación para Activity. (Se hereda de Activity).
Propiedad públicaDisplayNameObtiene o establece un nombre descriptivo opcional que se utiliza para la depuración, la validación, el control de excepciones y el seguimiento. (Se hereda de Activity).
Propiedad públicaIdObtiene un identificador que es único dentro del ámbito de definición del flujo de trabajo. (Se hereda de Activity).
Propiedad protegidaImplementationLa lógica de ejecución de la actividad. (Invalida a Activity.Implementation).
Propiedad protegidaImplementationVersionObtiene o establece la versión de la implementación de la actividad. (Invalida a Activity.ImplementationVersion).
Arriba

  NombreDescripción
Método protegidoAbortCuando se implementa en una clase derivada, realiza una acción en respuesta a la actividad que se anula.
Método protegidoCacheMetadata(ActivityMetadata)No implementado. Utilice el método de CacheMetadata en su lugar. (Invalida a Activity.CacheMetadata(ActivityMetadata)).
Método protegidoCacheMetadata(NativeActivityMetadata)Crea y valida una descripción de los argumentos de la actividad, las variables, de las actividades secundarias, y los delegados de la actividad.
Método protegidoCancelCuando se implementa en una clase derivada, lógica de las ejecuciones para producir la finalización temprana agraciada de la actividad.
Método públicoEquals(Object)Determina si el objeto especificado es igual al objeto actual. (Se hereda de Object).
Método protegidoExecuteCuando se implementa en una clase derivada, ejecuta la lógica de ejecución de la actividad.
Método protegidoFinalize Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por la recolección de elementos no utilizados. (Se hereda de Object).
Método públicoGetHashCode Sirve como una función hash para un tipo en particular. (Se hereda de Object).
Método públicoGetType Obtiene el Type de la instancia actual. (Se hereda de Object).
Método protegidoMemberwiseClone Crea una copia superficial del Object actual. (Se hereda de Object).
Método protegidoOnCreateDynamicUpdateMap(NativeActivityUpdateMapMetadata, Activity)Genera un evento al crear un mapa para la actualización dinámica.
Método protegidoOnCreateDynamicUpdateMap(UpdateMapMetadata, Activity)Genera un evento al crear un mapa para la actualización dinámica. (Invalida a Activity.OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity)).
Método públicoShouldSerializeDisplayNameIndica si la propiedad DisplayName se debe serializar. (Se hereda de Activity).
Método públicoToStringDevuelve un objeto String que contiene las propiedades Id y DisplayName del objeto Activity. (Se hereda de Activity).
Método protegidoUpdateInstanceActualiza la instancia de NativeActivity.
Arriba

El siguiente ejemplo de código muestra cómo crear una clase que herede de NativeActivity<TResult>. Este ejemplo es el ejemplo de Compuesto personalizado utilizando la actividad 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);
    }
}

.NET Framework

Compatible con: 4.5.2, 4.5.1, 4.5, 4

.NET Framework Client Profile

Compatible con: 4

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

System.Object
  System.Activities.Activity
    System.Activities.NativeActivity
      System.Activities.Statements.CancellationScope
      System.Activities.Statements.Compensate
      System.Activities.Statements.Confirm
      System.Activities.Statements.Delay
      System.Activities.Statements.DeleteBookmarkScope
      System.Activities.Statements.DoWhile
      System.Activities.Statements.Flowchart
      System.Activities.Statements.ForEach<T>
      System.Activities.Statements.HandleScope<THandle>
      System.Activities.Statements.If
      System.Activities.Statements.Interop
      System.Activities.Statements.InvokeAction
      System.Activities.Statements.InvokeAction<T>
      System.Activities.Statements.InvokeAction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>
      System.Activities.Statements.InvokeAction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>
      System.Activities.Statements.InvokeAction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>
      System.Activities.Statements.InvokeAction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13>
      System.Activities.Statements.InvokeAction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14>
      System.Activities.Statements.InvokeAction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>
      System.Activities.Statements.InvokeAction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16>
      System.Activities.Statements.InvokeAction<T1, T2>
      System.Activities.Statements.InvokeAction<T1, T2, T3>
      System.Activities.Statements.InvokeAction<T1, T2, T3, T4>
      System.Activities.Statements.InvokeAction<T1, T2, T3, T4, T5>
      System.Activities.Statements.InvokeAction<T1, T2, T3, T4, T5, T6>
      System.Activities.Statements.InvokeAction<T1, T2, T3, T4, T5, T6, T7>
      System.Activities.Statements.InvokeAction<T1, T2, T3, T4, T5, T6, T7, T8>
      System.Activities.Statements.InvokeAction<T1, T2, T3, T4, T5, T6, T7, T8, T9>
      System.Activities.Statements.InvokeDelegate
      System.Activities.Statements.NoPersistScope
      System.Activities.Statements.Parallel
      System.Activities.Statements.ParallelForEach<T>
      System.Activities.Statements.Persist
      System.Activities.Statements.Pick
      System.Activities.Statements.Rethrow
      System.Activities.Statements.Sequence
      System.Activities.Statements.StateMachine
      System.Activities.Statements.Switch<T>
      System.Activities.Statements.TerminateWorkflow
      System.Activities.Statements.TransactionScope
      System.Activities.Statements.TryCatch
      System.Activities.Statements.While
      System.Activities.Validation.AddValidationError
      System.Activities.Validation.AssertValidation
      System.Activities.Validation.Constraint
      System.ServiceModel.Activities.CorrelationScope
      System.ServiceModel.Activities.InitializeCorrelation
      System.ServiceModel.Activities.TransactedReceiveScope

Adiciones de comunidad

AGREGAR
Mostrar:
© 2015 Microsoft