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
Personas que lo han encontrado útil: 1 de 1 - Valorar este tema

NativeActivity (Clase)

Clase base abstracta para las actividades personalizadas que implementan la lógica de ejecución usando el método Execute, que tiene el acceso completo a las características del 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 esta.
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 quede inactivo.
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 protegidaImplementationLó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 acciones en respuesta a la actividad que se va a anular.
Método protegidoCacheMetadata(ActivityMetadata)Sin implementar. Utilice el método CacheMetadata en su lugar. (Invalida a Activity.CacheMetadata(ActivityMetadata)).
Método protegidoCacheMetadata(NativeActivityMetadata)Crea y valida una descripción de los argumentos, variables, actividades secundarias y delegados de la actividad.
Método protegidoCancelCuando se implementa en una clase derivada, ejecuta la lógica para producir una finalización precoz y correcta 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, pone en marcha 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 Typede 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

En la siguiente muestra de código se presenta cómo crear una clase que hereda de NativeActivity<TResult>. Este ejemplo es de la muestra 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, 4

.NET Framework Client Profile

Compatible con: 4

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 públicos static (Shared en Visual Basic) de este tipo son seguros para 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
¿Te ha resultado útil?
(Caracteres restantes: 1500)
Gracias por sus comentarios

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft. Reservados todos los derechos.