System.Linq.Expressions Przestrzeń nazw
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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 |
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.