System.Linq.Expressions 命名空間

包含類別、介面與列舉,使語言層級的程式碼表達式能以表達式樹的形式表示。

類別

名稱 Description
BinaryExpression

表示具有二元運算子的表達式。

BlockExpression

代表一個區塊,包含一連串可定義變數的表達式。

CatchBlock

代表 try 區塊中的 catch 語句。

ConditionalExpression

表示具有條件運算子的表達式。

ConstantExpression

代表一個具有恆定值的表達式。

DebugInfoExpression

發送或清除除錯資訊的序列點。 這讓除錯器在除錯時能標示正確的原始碼。

DefaultExpression

代表型別的預設值或空運算式。

DynamicExpression

代表動態操作。

DynamicExpressionVisitor

代表動態表達式樹的訪客或重寫器。

ElementInit

代表集合中 IEnumerable 單一元素的初始化器。

Expression

提供基底類別,從此衍生出代表表達樹節點的類別。 它也包含 staticShared 在 Visual Basic 中)建立各種節點類型的工廠方法。 這是一門 abstract 課。

Expression<TDelegate>

將強型別的 lambda 表達式表示為表達式樹的資料結構。 此類別無法獲得繼承。

ExpressionVisitor

代表表達樹的訪客或重寫者。

GotoExpression

代表無條件的跳躍。 這包括返回語句、中斷與續行語句,以及其他跳轉。

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

代表嘗試/接球/終於/失誤阻擋。

TypeBinaryExpression

代表表達式與型態之間的操作。

UnaryExpression

表示一個具有一元運算子的表達式。

介面

名稱 Description
IArgumentProvider

提供內部介面以存取多個樹節點的參數(DynamicExpression、ElementInit、MethodCallExpression、InvocationExpression、NewExpression 和 IndexExpression)。 此 API 僅供內部使用。

IDynamicExpression

提供內部介面以存取 DynamicExpression 樹節點的參數,以及 CallSite 和 Rewriting 功能。 你不應該使用這個 API。 它之所以公開,是因為 DLL 重構,且僅用於內部效能優化。

列舉

名稱 Description
ExpressionType

描述表達式樹狀結構之節點的節點類型。

GotoExpressionKind

指定這個 GotoExpression 所代表的跳躍類型。

MemberBindingType

描述 MemberInitExpression 物件中使用的系結類型。

備註

抽象類別 Expression 提供了用於建模表達式樹的類別階層的根節點。

在此命名空間中由 Expression衍生的類別,例如 MemberExpressionParameterExpression,用於表示表達樹中的節點。 Expression 類別包含 static(Visual Basic 中稱為 Shared)工廠方法,用以建立各種型別的表達樹節點。

列舉類型 ExpressionType 指定了唯一的節點類型。

另請參閱