OutArgument<T> 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í.
Terminál vazby, který představuje tok dat z aktivity.
generic <typename T>
public ref class OutArgument sealed : System::Activities::OutArgument
[System.ComponentModel.TypeConverter(typeof(System.Activities.XamlIntegration.OutArgumentConverter))]
[System.Windows.Markup.ContentProperty("Expression")]
public sealed class OutArgument<T> : System.Activities.OutArgument
[<System.ComponentModel.TypeConverter(typeof(System.Activities.XamlIntegration.OutArgumentConverter))>]
[<System.Windows.Markup.ContentProperty("Expression")>]
type OutArgument<'T> = class
inherit OutArgument
Public NotInheritable Class OutArgument(Of T)
Inherits OutArgument
Parametry typu
- T
Datový typ .OutArgument<T>
- Dědičnost
- Atributy
Příklady
Následující ukázka kódu ukazuje vytvoření objektu OutArgument<T>. Tento příklad je z ukázky Formatteru.
Sequence workflow = new Sequence
{
Variables = { mealExpense, result },
Activities =
{
new Assign<Expense>
{
Value = new InArgument<Expense>( (e) => new Meal { Amount = 50, Location = "Redmond", Vendor = "KFC" }),
To = new OutArgument<Expense>(mealExpense)
},
new WriteLine
{
Text = new InArgument<string>("Hello")
},
approveExpense,
new ReceiveReply
{
Request = approveExpense,
Content = ReceiveContent.Create(new OutArgument<bool>(result))
},
new If
{
Condition = new InArgument<bool> (result),
Then =
new WriteLine
{
Text = new InArgument<string>("Expense Approved")
},
Else =
new WriteLine
{
Text = new InArgument<string>("Expense Cannot be Approved")
},
},
}
};
Poznámky
Slouží OutArgument<T> k toku dat z aktivity. Pokud je aktivita kořenovou aktivitou pracovního postupu, použije se také k toku dat z pracovního postupu do hostitele pracovního postupu. V tomto příkladu se jako kořenová aktivita pracovního postupu používá vlastní Divide
aktivita, která má dva vstupní argumenty a jeden výstupní argument. Hostitelská aplikace předá do pracovního postupu dvě hodnoty a po dokončení pracovního postupu načte výsledek dělení.
int dividend = 500;
int divisor = 36;
Dictionary<string, object> arguments = new Dictionary<string, object>();
arguments.Add("Dividend", dividend);
arguments.Add("Divisor", divisor);
IDictionary<string, object> outputs =
WorkflowInvoker.Invoke(new Divide(), arguments);
Console.WriteLine("{0} / {1} = {2} Remainder {3}",
dividend, divisor, outputs["Result"], outputs["Remainder"]);
Aktivita Divide
používá argumenty k získání vstupních hodnot a k poskytnutí vypočítaných hodnot výsledků. Slouží Remainder
OutArgument<T> k předání zbytku dělení a Result výstupní argument poskytnutý odvozenými aktivitami Activity<TResult> se používá k předání podílu.
Poznámka
Pokud je vaše vlastní aktivita odvozena od obecného CodeActivity<TResult> s argumentem Int32 obecného typu, při vyvolání aktivity pomocí WorkflowInvoker metody Invoke vrátí Int32 hodnotu. Kromě toho CodeActivity<TResult>.Execute metoda vrátí Int32 hodnotu místo void
a nemusíte nastavit návratovou hodnotu.
public sealed class Divide : CodeActivity
{
[RequiredArgument]
public InArgument<int> Dividend { get; set; }
[RequiredArgument]
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);
}
}
Konstruktory
OutArgument<T>() |
Inicializuje novou instanci OutArgument<T> třídy pomocí výchozích hodnot. |
OutArgument<T>(Activity<Location<T>>) |
Inicializuje novou instanci OutArgument<T> třídy pomocí zadané Activity<TResult>. |
OutArgument<T>(DelegateArgument) |
Inicializuje novou instanci OutArgument<T> třídy pomocí zadané DelegateArgument. |
OutArgument<T>(Expression<Func<ActivityContext,T>>) |
Inicializuje novou instanci OutArgument<T> třídy pomocí zadaného výrazu. |
OutArgument<T>(Variable) |
Inicializuje novou instanci OutArgument<T> třídy pomocí zadané Variable. |
Pole
ResultValue |
Představuje konstantní hodnotu "Result", která odpovídá názvu Result vlastnosti typu OutArgument v základní třídě ActivityWithResultvýrazu . (Zděděno od Argument) |
Vlastnosti
ArgumentType |
Získá datový typ pro data vázaná na tento Argument. (Zděděno od Argument) |
Direction |
Získá, ArgumentDirection který určuje, zda Argument představuje tok dat do aktivity, ven z aktivity, nebo jak do a ven z aktivity. (Zděděno od Argument) |
EvaluationOrder |
Získá nebo nastaví nulovou hodnotu, která určuje pořadí, ve kterém je argument vyhodnocen. (Zděděno od Argument) |
Expression |
Získá hodnotu Activity<TResult> , která představuje hodnotu tohoto OutArgument<T>objektu . |
Metody
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
FromDelegateArgument(DelegateArgument) |
Inicializuje a vrátí nový OutArgument<T> vytvořený pomocí zadaného DelegateArgumentobjektu . |
FromExpression(Activity<Location<T>>) |
Inicializuje a vrátí nový OutArgument<T> vytvořený pomocí zadaného Activity<TResult>objektu . |
FromVariable(Variable) |
Inicializuje a vrátí nový OutArgument<T> vytvořený pomocí zadaného Variableobjektu . |
Get(ActivityContext) |
Získá hodnotu OutArgument<T> pomocí zadaného kontextu aktivity. |
Get<T>(ActivityContext) |
Získá hodnotu argumentu pomocí zadaného typu a kontextu aktivity. (Zděděno od Argument) |
GetHashCode() |
Slouží jako výchozí hashovací funkce. (Zděděno od Object) |
GetLocation(ActivityContext) |
Získá umístění hodnoty pro OutArgument<T>. |
GetType() |
Získá aktuální Type instanci. (Zděděno od Object) |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Objectsouboru . (Zděděno od Object) |
Set(ActivityContext, Object) |
Nastaví hodnotu argumentu pomocí zadaného kontextu aktivity. (Zděděno od Argument) |
Set(ActivityContext, T) |
Nastaví hodnotu objektu OutArgument<T> pomocí zadaného kontextu aktivity. |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
Operátory
Implicit(Activity<Location<T>> to OutArgument<T>) |
Inicializuje a vrátí nový OutArgument<T> vytvořený pomocí zadaného Activity<TResult>objektu . |
Implicit(DelegateArgument to OutArgument<T>) |
Inicializuje a vrátí nový OutArgument<T> vytvořený pomocí zadaného DelegateArgumentobjektu . |
Implicit(Variable to OutArgument<T>) |
Inicializuje a vrátí nový OutArgument<T> vytvořený pomocí zadaného Variableobjektu . |
Platí pro
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro