Exportar (0) Imprimir
Expandir todo
Este artículo se tradujo de forma manual. Mueva el puntero sobre las frases del artículo para ver el texto original.
Traducción
Original

OutArgument<T> (Clase)

Terminal de enlace que representa el flujo de datos de salida de una actividad.

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

[ContentPropertyAttribute("Expression")]
[TypeConverterAttribute(typeof(OutArgumentConverter))]
public sealed class OutArgument<T> : OutArgument

Parámetros de tipo

T

Tipo de datos de la clase OutArgument<T>.

El tipo OutArgument<T> expone los siguientes miembros.

  NombreDescripción
Método públicoOutArgument<T>()Inicializa una nueva instancia de la clase OutArgument<T> utilizando los valores predeterminados.
Método públicoOutArgument<T>(Activity<Location<T>>)Inicializa una nueva instancia de la clase OutArgument<T> utilizando la Activity<TResult> especificada.
Método públicoOutArgument<T>(DelegateArgument)Inicializa una nueva instancia de la clase OutArgument<T> utilizando la clase DelegateArgument especificada.
Método públicoOutArgument<T>(Expression<Func<ActivityContext, T>>)Inicializa una nueva instancia de la clase OutArgument<T> utilizando la expresión especificada.
Método públicoOutArgument<T>(Variable)Inicializa una nueva instancia de la clase OutArgument<T> utilizando la Variable especificada.
Arriba

  NombreDescripción
Propiedad públicaArgumentTypeObtiene el tipo de datos de los datos enlazados a este objeto Argument. (Se hereda de Argument).
Propiedad públicaDirectionObtiene un objeto ArgumentDirection que especifica si el argumento Argument representa el flujo de datos de entrada de una actividad, de salida de la actividad o tanto de entrada como de salida de una actividad. (Se hereda de Argument).
Propiedad públicaEvaluationOrderObtiene o establece un valor basado en cero que especifica el orden en el que se evalúa el argumento. (Se hereda de Argument).
Propiedad públicaExpressionObtiene una clase Activity<TResult> que representa el valor de esta clase OutArgument<T>.
Arriba

  NombreDescripción
Método públicoEquals(Object)Determina si el objeto Object especificado es igual al objeto Object actual. (Se hereda de Object).
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úblicoMiembro estáticoFromDelegateArgumentInicializa y devuelve una nueva clase OutArgument<T> construida utilizando la clase DelegateArgument especificada.
Método públicoMiembro estáticoFromExpressionInicializa y devuelve una nueva clase OutArgument<T> construida utilizando la Activity<TResult>especificada.
Método públicoMiembro estáticoFromVariableInicializa y devuelve una nueva clase OutArgument<T> construida utilizando la Variable especificada.
Método públicoGetObtiene el valor de OutArgument<T> utilizando el contexto de actividad especificado.
Método públicoGetHashCodeActúa como función hash para un tipo concreto. (Se hereda de Object).
Método públicoGetLocationObtiene la ubicación del valor de la clase OutArgument<T>.
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 públicoSet(ActivityContext, Object)Establece el valor del argumento utilizando el contexto de actividad especificado. (Se hereda de Argument).
Método públicoSet(ActivityContext, T)Establece el valor del argumento OutArgument<T> utilizando el contexto de actividad especificado.
Método públicoToString Retorna una cadena que representa al objeto actual. (Se hereda de Object).
Arriba

  NombreDescripción
Operador públicoMiembro estáticoImplicit(Activity<Location<T>> to OutArgument<T>)Inicializa y devuelve una nueva clase OutArgument<T> construida utilizando la Activity<TResult>especificada.
Operador públicoMiembro estáticoImplicit(DelegateArgument to OutArgument<T>)Inicializa y devuelve una nueva clase OutArgument<T> construida utilizando la clase DelegateArgument especificada.
Operador públicoMiembro estáticoImplicit(Variable to OutArgument<T>)Inicializa y devuelve una nueva clase OutArgument<T> construida utilizando la Variable especificada.
Arriba

El OutArgument<T> se utiliza para canalizar el flujo de datos de salida de una actividad.Si la actividad es la actividad raíz de un flujo de trabajo, también se utiliza para el flujo de datos de salida del flujo de trabajo al host del flujo de trabajo.En este ejemplo, se utiliza como la actividad raíz de un flujo de trabajo una actividad Divide personalizada que tiene dos argumentos de entrada y un argumento de salida.La aplicación host pasa dos valores al flujo de trabajo y, a continuación, recupera el resultado de la división cuando se completa el flujo de trabajo.

int dividend = 500;
int divisor = 36;

Dictionary<string, object> wfArguments = new Dictionary<string, object>();
wfArguments.Add("Dividend", dividend);
wfArguments.Add("Divisor", divisor);

IDictionary<string, object> outputs =
    WorkflowInvoker.Invoke(new Divide(), wfArguments);

Console.WriteLine("{0} / {1} = {2} Remainder {3}", 
    dividend, divisor, outputs["Result"], outputs["Remainder"]);












La actividad Divide utiliza los argumentos para recibir los valores de entrada y proporcionar los valores calculados de resultado.El argumento OutArgument<T>Remainder se utiliza para pasar el resto de la división y el argumento de salida Result proporcionado por las actividades derivadas de Activity<TResult> se usa para pasar el cociente.

NotaNota

Si su actividad personalizada se deriva del objeto CodeActivity<TResult> genérico con un valor Int32 como su argumento de tipo genérico, al invocar la actividad con el método Invoke WorkflowInvoker, devuelve un valor Int32.Además, el método CodeActivity<TResult>.Execute(CodeActivityContext) devolverá un valor Int32 en lugar de void y no es necesario establecer un valor devuelto.

class Divide : CodeActivity
{
    public InArgument<int> Dividend { get; set; }
    public InArgument<int> Divisor { get; set; }
    public OutArgument<int> Remainder { get; set; }
    public OutArgument<int> Result { get; set; }

    protected override void Execute(CodeActivityContext context)
    {
        int quotient = Dividend.Get(context) / Divisor.Get(context);
        int remainder = Dividend.Get(context) % Divisor.Get(context);

        Result.Set(context, quotient);
        Remainder.Set(context, remainder);
    }
}

.NET Framework

Compatible con: 4

.NET Framework Client Profile

Compatible con: 4

Windows 7, Windows Vista SP1 o posterior, Windows XP SP3, Windows Server 2008 (no se admite Server Core), Windows Server 2008 R2 (se admite Server Core con SP1 o posterior), Windows Server 2003 SP2

.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.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft