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
veri türü OutArgument<T>.
- Devralma
- Öznitelikler
Örnekler
Aşağıdaki kod örneği, oluşturma OutArgument<T>işlemini gösterir. Bu örnek Biçimlendirici örneğindendir.
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
bir OutArgument<T> 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 Divide
bir etkinlik 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"]);
Etkinlik, Divide
giriş değerlerini almak ve hesaplanan sonuç değerlerini sağlamak için bağımsız değişkenleri kullanır. Remainder
OutArgument<T> bölümün geri kalanını dışarı aktarmak için kullanılır ve Result türetilmiş etkinlikler tarafından Activity<TResult> sağlanan çıkış bağımsız değişkeni bölümü geçirmek için kullanılır.
Not
Özel etkinliğiniz genel türünde bir Int32 bağımsız değişkeniyle genelden CodeActivity<TResult> türetilirse, invoke yöntemiyle WorkflowInvoker etkinliği çağırdığınızda bir Int32 değer döndürür. Buna ek olarak, CodeActivity<TResult>.Execute yöntemi yerine void
bir Int32 değer döndürür ve bir 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 sınıfın OutArgument<T> yeni bir örneğini başlatın. |
OutArgument<T>(Activity<Location<T>>) |
Belirtilen Activity<TResult>öğesini kullanarak sınıfının yeni bir örneğini OutArgument<T> başlatır. |
OutArgument<T>(DelegateArgument) |
Belirtilen DelegateArgumentöğesini kullanarak sınıfının yeni bir örneğini OutArgument<T> başlatır. |
OutArgument<T>(Expression<Func<ActivityContext,T>>) |
Belirtilen ifadeyi OutArgument<T> kullanarak sınıfının yeni bir örneğini başlatır. |
OutArgument<T>(Variable) |
Belirtilen Variableöğesini kullanarak sınıfının yeni bir örneğini OutArgument<T> başlatır. |
Alanlar
ResultValue |
İfade temel sınıfındaki ActivityWithResulttürünün OutArgument özelliğinin Result adına karşılık gelen "Result" sabit değerini temsil eder. (Devralındığı yer: Argument) |
Özellikler
ArgumentType |
Bu Argumentile ilişkili verilerin veri türünü alır. (Devralındığı yer: Argument) |
Direction |
ArgumentDirection öğesinin bir etkinliğe veri akışını mı, etkinlikten mi Argument yoksa etkinlikten içeri ve dışarıyı mı temsil ettiğini belirten bir 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 yeni bir OutArgument<T> oluşturur ve döndürür. |
FromExpression(Activity<Location<T>>) |
Belirtilen Activity<TResult>kullanılarak yeni bir OutArgument<T> oluşturur ve döndürür. |
FromVariable(Variable) |
Belirtilen Variablekullanılarak yeni bir OutArgument<T> oluşturur ve döndürür. |
Get(ActivityContext) |
Belirtilen etkinlik bağlamını OutArgument<T> kullanarak 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) |
değerinin OutArgument<T>konumunu alır. |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ 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ı OutArgument<T> kullanarak değerini ayarlar. |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |
İşleçler
Implicit(Activity<Location<T>> to OutArgument<T>) |
Belirtilen Activity<TResult>kullanılarak yeni bir OutArgument<T> oluşturur ve döndürür. |
Implicit(DelegateArgument to OutArgument<T>) |
Belirtilen DelegateArgumentkullanılarak yeni bir OutArgument<T> oluşturur ve döndürür. |
Implicit(Variable to OutArgument<T>) |
Belirtilen Variablekullanılarak yeni bir OutArgument<T> oluşturur ve döndürür. |
Şunlara uygulanır
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin