System.Linq.Expressions Przestrzeń nazw

Zawiera klasy, interfejsy i wyliczenia, które umożliwiają reprezentację wyrażeń kodu na poziomie języka jako obiektów w postaci drzew wyrażeń.

Klasy

BinaryExpression

Reprezentuje wyrażenie, które ma operator binarny.

BlockExpression

Reprezentuje blok zawierający sekwencję wyrażeń, w których można zdefiniować zmienne.

CatchBlock

Reprezentuje instrukcję catch w bloku try.

ConditionalExpression

Reprezentuje wyrażenie, które ma operator warunkowy.

ConstantExpression

Reprezentuje wyrażenie, które ma stałą wartość.

DebugInfoExpression

Emituje lub czyści punkt sekwencji informacji o debugowaniu. Dzięki temu debuger może wyróżnić prawidłowy kod źródłowy podczas debugowania.

DefaultExpression

Reprezentuje wartość domyślną typu lub pustego wyrażenia.

DynamicExpression

Reprezentuje operację dynamiczną.

DynamicExpressionVisitor

Reprezentuje odwiedzających lub ponownie autoryzuje drzewa wyrażeń dynamicznych.

ElementInit

Reprezentuje inicjator dla pojedynczego IEnumerable elementu kolekcji.

Expression

Udostępnia klasę bazową, z której pochodzą klasy reprezentujące węzły drzewa wyrażeń. Zawiera static również metody fabryki (Sharedw Visual Basic) służące do tworzenia różnych typów węzłów. Jest to abstract klasa.

Expression<TDelegate>

Reprezentuje silnie typizowane wyrażenie lambda jako strukturę danych w postaci drzewa wyrażeń. Klasa ta nie może być dziedziczona.

ExpressionVisitor

Reprezentuje obiekt odwiedzający lub autor ponownego tworzenia drzew wyrażeń.

GotoExpression

Reprezentuje bezwarunkowy skok. Obejmuje to instrukcje zwrotne, instrukcje przerwania i kontynuacji oraz inne skoki.

IndexExpression

Reprezentuje indeksowanie właściwości lub tablicy.

InvocationExpression

Reprezentuje wyrażenie, które stosuje wyrażenie delegata lub lambda do listy wyrażeń argumentów.

LabelExpression

Reprezentuje etykietę, którą można umieścić w dowolnym Expression kontekście. Jeśli zostanie on przeskoczył, otrzyma wartość podaną przez odpowiedni GotoExpressionelement . W przeciwnym razie otrzymuje wartość w DefaultValueelemecie . Jeśli wartość Type jest równa System.Void, nie należy podać żadnej wartości.

LabelTarget

Służy do reprezentowania elementu docelowego elementu GotoExpression.

LambdaExpression

Opisuje wyrażenie lambda. Spowoduje to przechwycenie bloku kodu podobnego do treści metody .NET.

ListInitExpression

Reprezentuje wywołanie konstruktora z inicjatorem kolekcji.

LoopExpression

Reprezentuje nieskończoną pętlę. Można go zamknąć z "break".

MemberAssignment

Reprezentuje operację przypisania dla pola lub właściwości obiektu.

MemberBinding

Udostępnia klasę bazową, z której klasy reprezentują powiązania używane do inicjowania składowych nowo utworzonego obiektu.

MemberExpression

Reprezentuje dostęp do pola lub właściwości.

MemberInitExpression

Reprezentuje wywoływanie konstruktora i inicjowanie co najmniej jednego elementu członkowskiego nowego obiektu.

MemberListBinding

Reprezentuje inicjowanie elementów składowych kolekcji nowo utworzonego obiektu.

MemberMemberBinding

Reprezentuje inicjowanie elementów członkowskich elementu członkowskiego nowo utworzonego obiektu.

MethodCallExpression

Reprezentuje wywołanie metody statycznej lub metody wystąpienia.

NewArrayExpression

Reprezentuje tworzenie nowej tablicy i ewentualnie inicjowanie elementów nowej tablicy.

NewExpression

Reprezentuje wywołanie konstruktora.

ParameterExpression

Reprezentuje nazwane wyrażenie parametru.

RuntimeVariablesExpression

Wyrażenie, które zapewnia uprawnienie do odczytu/zapisu środowiska uruchomieniowego dla zmiennych.

SwitchCase

Reprezentuje jeden przypadek obiektu SwitchExpression.

SwitchExpression

Reprezentuje wyrażenie kontrolki, które obsługuje wiele zaznaczeń, przekazując kontrolkę do SwitchCase.

SymbolDocumentInfo

Przechowuje informacje niezbędne do emitowania informacji o symbolu debugowania dla pliku źródłowego, w szczególności nazwy pliku i unikatowego identyfikatora języka.

TryExpression

Reprezentuje blok try/catch/finally/fault.

TypeBinaryExpression

Reprezentuje operację między wyrażeniem a typem.

UnaryExpression

Reprezentuje wyrażenie z operatorem jednoargumentowym.

Interfejsy

IArgumentProvider

Udostępnia wewnętrzny interfejs umożliwiający uzyskiwanie dostępu do argumentów wielu węzłów drzewa (DynamicExpression, ElementInit, MethodCallExpression, InvocationExpression, NewExpression i IndexExpression). Ten interfejs API jest przeznaczony tylko do użytku wewnętrznego.

IDynamicExpression

Udostępnia wewnętrzny interfejs umożliwiający uzyskiwanie dostępu do argumentów węzłów drzewa DynamicExpression, a także funkcji CallSite i Rewriting. Nie należy używać tego interfejsu API. Jest ona publiczna tylko z powodu refaktoryzacji bibliotek DLL i istnieje tylko w przypadku wewnętrznych optymalizacji wydajności.

Wyliczenia

ExpressionType

Opisuje typy węzłów dla węzłów drzewa wyrażeń.

GotoExpressionKind

Określa rodzaj skoku, który reprezentuje GotoExpression .

MemberBindingType

Opisuje typy powiązań, które są używane w MemberInitExpression obiektach.

Uwagi

Klasa abstrakcyjna Expression udostępnia katalog główny hierarchii klas używanej do modelowania drzew wyrażeń.

Klasy w tej przestrzeni nazw, które pochodzą z , na przykład i , są używane do Expression MemberExpression ParameterExpression reprezentowania węzłów w drzewie wyrażeń. Klasa zawiera metody fabryki ( Visual Basic) do tworzenia węzłów drzewa wyrażeń Expression static różnych Shared typów.

Typ ExpressionType wyliczenia określa unikatowe typy węzłów.

Zobacz też