System.Linq.Expressions 命名空間
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
包含類別、介面和列舉,其可使用運算式樹狀結構格式將這些語言層級程式碼運算式表示為物件。
類別
BinaryExpression |
代表具有二元運算子的運算式。 |
BlockExpression |
代表區塊,其中包含可定義變數的運算式序列。 |
CatchBlock |
代表 try 區塊中的 catch 陳述式。 |
ConditionalExpression |
代表具有條件運算子的運算式。 |
ConstantExpression |
代表具有常數值的運算式。 |
DebugInfoExpression |
發出或清除偵錯資訊的序列點。 這可讓偵錯工具在偵錯時反白顯示正確的原始程式碼。 |
DefaultExpression |
代表類型的預設值或空運算式。 |
DynamicExpression |
代表動態運算。 |
DynamicExpressionVisitor |
代表動態運算式樹狀結構的造訪者或重寫器。 |
ElementInit |
代表 IEnumerable 集合中單一項目的初始設定式。 |
Expression |
提供基底類別,表示運算式樹狀架構節點的類別可由此基底類別衍生。 它也包含 |
Expression<TDelegate> |
將強類型 Lambda 運算式表示為運算式樹狀架構形式的資料結構。 此類別無法獲得繼承。 |
ExpressionVisitor |
代表運算式樹狀結構的造訪者或重寫器。 |
GotoExpression |
代表無條件跳躍。 這包括 return 陳述式、break 和 continue 陳述式,以及其他跳躍。 |
IndexExpression |
代表對屬性或陣列進行索引編製。 |
InvocationExpression |
代表將委派或 Lambda 運算式套用至引數運算式清單的運算式。 |
LabelExpression |
表示可放在任何 Expression 內容中的標籤。 如果跳至標籤,它會取得對應的 GotoExpression 所提供的值。 否則它會接收 DefaultValue 中的值。 如果 Type 等於 System.Void,則不應提供任何值。 |
LabelTarget |
用來表示 GotoExpression 的目標。 |
LambdaExpression |
描述 Lambda 運算式。 這會擷取類似於 .NET 方法主體的程式碼區塊。 |
ListInitExpression |
代表具有集合初始設定式的建構函式呼叫。 |
LoopExpression |
代表無限迴圈。 可使用 "break" 加以結束。 |
MemberAssignment |
代表物件之欄位或屬性的指派作業。 |
MemberBinding |
提供基底類別,從其中衍生的類別代表用來初始化新建立物件成員的繫結。 |
MemberExpression |
代表存取欄位或屬性。 |
MemberInitExpression |
代表呼叫建構函式,並初始化新物件的一或多個成員。 |
MemberListBinding |
代表初始化新建立物件之集合成員的項目。 |
MemberMemberBinding |
代表初始化新建立物件之成員的成員。 |
MethodCallExpression |
代表靜態或執行個體方法的呼叫。 |
NewArrayExpression |
代表建立新陣列,並可能初始化新陣列的項目。 |
NewExpression |
代表建構函式呼叫。 |
ParameterExpression |
代表具名參數運算式。 |
RuntimeVariablesExpression |
為變數提供執行階段讀取/寫入權限的運算式。 |
SwitchCase |
表示 SwitchExpression 的一個案例。 |
SwitchExpression |
表示透過將控制權傳遞至 SwitchCase 來處理多重選擇的控制運算式。 |
SymbolDocumentInfo |
儲存發出原始程式檔偵錯符號資訊所需的資訊,特別是檔名和唯一語言識別項。 |
TryExpression |
代表 try/catch/finally/fault 區塊。 |
TypeBinaryExpression |
代表運算式和類型之間的作業。 |
UnaryExpression |
代表具有一元運算子的運算式。 |
介面
IArgumentProvider |
提供內部介面以存取多個樹狀節點 (DynamicExpression、ElementInit、MethodCallExpression、InvocationExpression、NewExpression 和 IndexExpression) 的引數。 此 API 僅供內部使用。 |
IDynamicExpression |
提供內部介面,用於存取 DynamicExpression 樹狀節點的引數以及 CallSite 和 Rewriting 功能。 您不應該使用這個 API。 它只有在 DLL 重構時為公用,且存在的唯一目的是將內部效能最佳化。 |
列舉
ExpressionType |
描述運算式樹狀節點的節點類型。 |
GotoExpressionKind |
指定這個 GotoExpression 所代表的跳躍類型。 |
MemberBindingType |
描述用於 MemberInitExpression 物件中的繫結型別。 |
備註
抽象類別 Expression 提供用來模型運算式樹狀架構之類別階層的根目錄。
這個命名空間中衍生自 Expression 的類別,例如 MemberExpression 和 ParameterExpression ,可用來表示運算式樹狀結構中的節點。 類別 Expression 包含 static
Visual Basic) Factory 方法中的 (Shared
,以建立各種類型的運算式樹狀節點。
列舉類型 ExpressionType 會指定唯一的節點類型。