OutArgument<T> Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bir etkinlikten veri akışını temsil eden bağlama terminali.
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
Tür Parametreleri
- T
OutArgument<T>veri türü.
- Devralma
- Öznitelikler
Örnekler
Aşağıdaki kod örneğinde OutArgument<T>oluşturma gösterilmektedir. Bu örnek, Biçimlendirici örneğinden alınmalıdır.
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")
},
},
}
};
Açıklamalar
OutArgument<T>, bir etkinlikten veri akışı yapmak için kullanılır. Etkinlik bir iş akışının kök etkinliğiyse, iş akışından iş akışı konağına veri akışı yapmak için de kullanılır. Bu örnekte, bir iş akışının kök etkinliği olarak iki giriş bağımsız değişkeni ve bir çıkış bağımsız değişkeni olan özel bir Divide
etkinliği kullanılır. Konak uygulaması iş akışına iki değer geçirir ve iş akışı tamamlandıktan sonra bölmenin sonucunu alır.
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"]);
Divide
etkinliği, girdi değerlerini almak ve hesaplanan sonuç değerlerini sağlamak için bağımsız değişkenleri kullanır.
Remainder
OutArgument<T>, bölmenin geri kalanını geçirmek için kullanılır ve Activity<TResult> türetilmiş etkinlikler tarafından sağlanan Result çıktı bağımsız değişkeni bölümü geçirmek için kullanılır.
Not
Özel etkinliğiniz, genel tür bağımsız değişkeni olarak bir Int32 olan genel CodeActivity<TResult> türetilirse, WorkflowInvoker Invoke yöntemiyle etkinliği çağırdığınızda, Int32 bir değer döndürür. Buna ek olarak, CodeActivity<TResult>.Execute yöntemi void
yerine Int32 bir değer döndürür ve dönüş değeri ayarlamanız gerekmez.
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);
}
}
Oluşturucular
OutArgument<T>() |
Varsayılan değerleri kullanarak OutArgument<T> sınıfının yeni bir örneğini başlatın. |
OutArgument<T>(Activity<Location<T>>) |
Belirtilen Activity<TResult>kullanarak OutArgument<T> sınıfının yeni bir örneğini başlatır. |
OutArgument<T>(DelegateArgument) |
Belirtilen DelegateArgumentkullanarak OutArgument<T> sınıfının yeni bir örneğini başlatır. |
OutArgument<T>(Expression<Func<ActivityContext,T>>) |
Belirtilen ifadeyi kullanarak OutArgument<T> sınıfının yeni bir örneğini başlatır. |
OutArgument<T>(Variable) |
Belirtilen Variablekullanarak OutArgument<T> sınıfının yeni bir örneğini başlatır. |
Alanlar
ResultValue |
ActivityWithResultifade temel sınıfındaki OutArgument türündeki Result özelliğinin adına karşılık gelen "Result" sabit değerini temsil eder. (Devralındığı yer: Argument) |
Özellikler
ArgumentType |
Bu Argumentbağlı verilerin veri türünü alır. (Devralındığı yer: Argument) |
Direction |
Argument bir etkinliğe veri akışını mı, etkinlik dışında mı yoksa etkinlik içinde veya dışında mı veri akışını temsil ettiğini belirten bir ArgumentDirection alır. (Devralındığı yer: Argument) |
EvaluationOrder |
Bağımsız değişkenin değerlendirilme sırasını belirten sıfır tabanlı bir değer alır veya ayarlar. (Devralındığı yer: Argument) |
Expression |
Bu OutArgument<T>değerini temsil eden bir Activity<TResult> alır. |
Yöntemler
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
FromDelegateArgument(DelegateArgument) |
Belirtilen DelegateArgumentkullanılarak yapılan yeni bir OutArgument<T> başlatır ve döndürür. |
FromExpression(Activity<Location<T>>) |
Belirtilen Activity<TResult>kullanılarak yapılan yeni bir OutArgument<T> başlatır ve döndürür. |
FromVariable(Variable) |
Belirtilen Variablekullanılarak yapılan yeni bir OutArgument<T> başlatır ve döndürür. |
Get(ActivityContext) |
Belirtilen etkinlik bağlamını kullanarak OutArgument<T> değerini alır. |
Get<T>(ActivityContext) |
Belirtilen tür ve etkinlik bağlamını kullanarak bağımsız değişkenin değerini alır. (Devralındığı yer: Argument) |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetLocation(ActivityContext) |
OutArgument<T>değerinin konumunu alır. |
GetType() |
Geçerli örneğin Type alır. (Devralındığı yer: Object) |
MemberwiseClone() |
Geçerli Objectbasit bir kopyasını oluşturur. (Devralındığı yer: Object) |
Set(ActivityContext, Object) |
Belirtilen etkinlik bağlamını kullanarak bağımsız değişkenin değerini ayarlar. (Devralındığı yer: Argument) |
Set(ActivityContext, T) |
Belirtilen etkinlik bağlamını kullanarak OutArgument<T> değerini ayarlar. |
ToString() |
Geçerli nesneyi temsil eden bir dize döndürür. (Devralındığı yer: Object) |
İşleçler
Implicit(Activity<Location<T>> to OutArgument<T>) |
Belirtilen Activity<TResult>kullanılarak yapılan yeni bir OutArgument<T> başlatır ve döndürür. |
Implicit(DelegateArgument to OutArgument<T>) |
Belirtilen DelegateArgumentkullanılarak yapılan yeni bir OutArgument<T> başlatır ve döndürür. |
Implicit(Variable to OutArgument<T>) |
Belirtilen Variablekullanılarak yapılan yeni bir OutArgument<T> başlatır ve döndürür. |