OutArgument<T> Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Terminal pengikatan yang mewakili aliran data dari aktivitas.
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
Jenis parameter
- T
Jenis data OutArgument<T>.
- Warisan
- Atribut
Contoh
Sampel kode berikut menunjukkan pembuatan OutArgument<T>. Contoh ini berasal dari sampel Formatter.
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")
},
},
}
};
Keterangan
OutArgument<T> digunakan untuk mengalirkan data dari aktivitas. Jika aktivitas adalah aktivitas akar alur kerja, maka aktivitas tersebut juga digunakan untuk mengalirkan data keluar dari alur kerja ke host alur kerja. Dalam contoh ini, aktivitas Divide
kustom yang memiliki dua argumen input dan satu argumen output digunakan sebagai aktivitas akar alur kerja. Aplikasi host meneruskan dua nilai ke dalam alur kerja lalu mengambil hasil pembagian setelah alur kerja selesai.
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"]);
Aktivitas Divide
menggunakan argumen untuk menerima nilai input dan untuk memberikan nilai hasil komputasi.
Remainder
OutArgument<T> digunakan untuk melewatkan sisa pembagian, dan argumen output Result yang disediakan oleh aktivitas turunan Activity<TResult> digunakan untuk melewatkan kuota.
Nota
Jika aktivitas kustom Anda berasal dari CodeActivity<TResult> generik dengan Int32 sebagai argumen jenis generiknya, saat Anda memanggil aktivitas dengan metode WorkflowInvoker Invoke, itu mengembalikan nilai Int32. Selain itu, metode CodeActivity<TResult>.Execute akan mengembalikan nilai Int32 alih-alih void
dan Anda tidak perlu menetapkan nilai pengembalian.
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);
}
}
Konstruktor
OutArgument<T>() |
Menginisialisasi instans baru kelas OutArgument<T> menggunakan nilai default. |
OutArgument<T>(Activity<Location<T>>) |
Menginisialisasi instans baru kelas OutArgument<T> menggunakan Activity<TResult>yang ditentukan . |
OutArgument<T>(DelegateArgument) |
Menginisialisasi instans baru kelas OutArgument<T> menggunakan DelegateArgumentyang ditentukan . |
OutArgument<T>(Expression<Func<ActivityContext,T>>) |
Menginisialisasi instans baru kelas OutArgument<T> menggunakan ekspresi yang ditentukan. |
OutArgument<T>(Variable) |
Menginisialisasi instans baru kelas OutArgument<T> menggunakan Variableyang ditentukan . |
Bidang
ResultValue |
Mewakili nilai konstanta "Hasil", yang sesuai dengan nama properti Result jenis OutArgument di kelas dasar ekspresi ActivityWithResult. (Diperoleh dari Argument) |
Properti
ArgumentType |
Mendapatkan jenis data untuk data yang terikat ke Argumentini. (Diperoleh dari Argument) |
Direction |
Mendapatkan ArgumentDirection yang menentukan apakah Argument mewakili aliran data ke dalam aktivitas, keluar dari aktivitas, atau masuk dan keluar dari aktivitas. (Diperoleh dari Argument) |
EvaluationOrder |
Mendapatkan atau menetapkan nilai berbasis nol yang menentukan urutan evaluasi argumen. (Diperoleh dari Argument) |
Expression |
Mendapatkan Activity<TResult> yang mewakili nilai OutArgument<T>ini. |
Metode
Equals(Object) |
Menentukan apakah objek yang ditentukan sama dengan objek saat ini. (Diperoleh dari Object) |
FromDelegateArgument(DelegateArgument) |
Menginisialisasi dan mengembalikan OutArgument<T> baru yang dibangun menggunakan DelegateArgumentyang ditentukan . |
FromExpression(Activity<Location<T>>) |
Menginisialisasi dan mengembalikan OutArgument<T> baru yang dibangun menggunakan Activity<TResult>yang ditentukan . |
FromVariable(Variable) |
Menginisialisasi dan mengembalikan OutArgument<T> baru yang dibangun menggunakan Variableyang ditentukan . |
Get(ActivityContext) |
Mendapatkan nilai OutArgument<T> menggunakan konteks aktivitas yang ditentukan. |
Get<T>(ActivityContext) |
Mendapatkan nilai argumen menggunakan jenis dan konteks aktivitas yang ditentukan. (Diperoleh dari Argument) |
GetHashCode() |
Berfungsi sebagai fungsi hash default. (Diperoleh dari Object) |
GetLocation(ActivityContext) |
Mendapatkan lokasi nilai untuk OutArgument<T>. |
GetType() |
Mendapatkan Type instans saat ini. (Diperoleh dari Object) |
MemberwiseClone() |
Membuat salinan dangkal dari Objectsaat ini. (Diperoleh dari Object) |
Set(ActivityContext, Object) |
Mengatur nilai argumen menggunakan konteks aktivitas yang ditentukan. (Diperoleh dari Argument) |
Set(ActivityContext, T) |
Mengatur nilai OutArgument<T> menggunakan konteks aktivitas yang ditentukan. |
ToString() |
Mengembalikan string yang mewakili objek saat ini. (Diperoleh dari Object) |
Operator
Implicit(Activity<Location<T>> to OutArgument<T>) |
Menginisialisasi dan mengembalikan OutArgument<T> baru yang dibangun menggunakan Activity<TResult>yang ditentukan . |
Implicit(DelegateArgument to OutArgument<T>) |
Menginisialisasi dan mengembalikan OutArgument<T> baru yang dibangun menggunakan DelegateArgumentyang ditentukan . |
Implicit(Variable to OutArgument<T>) |
Menginisialisasi dan mengembalikan OutArgument<T> baru yang dibangun menggunakan Variableyang ditentukan . |