Share via


ValueTypeFieldReference<TOperand,TResult> 類別

定義

代表值型別的欄位,可用來做為運算式中的左值 (l-value)。

generic <typename TOperand, typename TResult>
public ref class ValueTypeFieldReference sealed : System::Activities::CodeActivity<System::Activities::Location<TResult> ^>
public sealed class ValueTypeFieldReference<TOperand,TResult> : System.Activities.CodeActivity<System.Activities.Location<TResult>>
type ValueTypeFieldReference<'Operand, 'Result> = class
    inherit CodeActivity<Location<'Result>>
Public NotInheritable Class ValueTypeFieldReference(Of TOperand, TResult)
Inherits CodeActivity(Of Location(Of TResult))

類型參數

TOperand

值型別。

TResult

欄位型別 (Field Type)。

繼承
ValueTypeFieldReference<TOperand,TResult>

範例

下列程式碼範例在 ValueTypeFieldReference<TOperand,TResult> 活動中使用 Assign,將整數值指派至欄位,並將欄位值列印至主控台。 使用下列範例中定義的 Assign 時,struct 活動相當於下列陳述式。 myStructVariable.AField = 1;.

注意

強烈建議您呼叫 ValueTypeFieldReference<TOperand,TResult>,而非直接具現化 ConvertReference 左值 (l-value) 運算式活動,因為前者可以提供層級較高的抽象概念,並讓您以更直覺的方式實作工作流程。

// Define a struct with a field named AField.  
struct StructWithField  
{  
    public int AField;  
}  

public static void ValueTypeFieldReferenceSample()  
{  
    // Create a variable of type StructWithField to store the property.  
    var swfvar = new Variable<StructWithField>("swfvar", new StructWithField());  

    Activity myActivity = new Sequence  
    {  
        Variables = { swfvar },  
        Activities =   
        {                      
            // Create an Assign activity to assign a value to the AField field.  
            new Assign<int>  
            {  
                To = new ValueTypeFieldReference<StructWithField, int>()  
                {  
                    OperandLocation = swfvar,  
                    FieldName = "AField",  
                },  
                // Assign an integer value to AField.  
                Value = 1,  
            },  
            // Print the new field value to the console.  
            new WriteLine()  
            {  
                Text = ExpressionServices.Convert<string>(ctx => swfvar.Get(ctx).AField.ToString()),  
            }  
        }  
    };  

    // Invoke the Sequence activity.  
    WorkflowInvoker.Invoke(myActivity);  
}  

建構函式

ValueTypeFieldReference<TOperand,TResult>()

初始化 ValueTypeFieldReference<TOperand,TResult> 類別的新執行個體。

屬性

CacheId

取得工作流程定義範圍內的唯一快取識別碼。

(繼承來源 Activity)
Constraints

取得 Constraint 活動的集合,這些活動可以設定為提供 Activity 的驗證。

(繼承來源 Activity)
DisplayName

取得或設定選擇性的易記名稱,這個名稱會用於偵錯、驗證、例外狀況處理及追蹤。

(繼承來源 Activity)
FieldName

取得或設定欄位的名稱。

Id

取得工作流程定義範圍內的唯一識別碼。

(繼承來源 Activity)
Implementation

不支援。

(繼承來源 CodeActivity<TResult>)
ImplementationVersion

取得或設定活動的實作版本。

(繼承來源 CodeActivity<TResult>)
OperandLocation

取得或設定包含該欄位之值型別的執行個體。

Result

取得或設定 Activity<TResult> 的結果引數。

(繼承來源 Activity<TResult>)
ResultType

在衍生類別中實作時,取得活動 OutArgument 的型別。

(繼承來源 ActivityWithResult)

方法

CacheMetadata(ActivityMetadata)

未實作。 請改用 CacheMetadata(CodeActivityMetadata)

(繼承來源 CodeActivity<TResult>)
CacheMetadata(CodeActivityMetadata)

建立並驗證活動引數、變數、子活動和活動委派的描述。

(繼承來源 CodeActivity<TResult>)
Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
Execute(CodeActivityContext)

在衍生類別中實作時,執行活動的執行。

(繼承來源 CodeActivity<TResult>)
GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity)

建立動態更新的對應時引發事件。

(繼承來源 CodeActivity<TResult>)
ShouldSerializeDisplayName()

指出是否應序列化 DisplayName 屬性。

(繼承來源 Activity)
ToString()

傳回包含 的 和 的 。

(繼承來源 Activity)

適用於