Expression.ConvertChecked Metoda
Definicja
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.
Tworzy obiekt UnaryExpression reprezentujący operację konwersji, która zgłasza wyjątek, jeśli typ docelowy jest przepełniony.
Przeciążenia
| ConvertChecked(Expression, Type) |
Tworzy obiekt UnaryExpression reprezentujący operację konwersji, która zgłasza wyjątek, jeśli typ docelowy jest przepełniony. |
| ConvertChecked(Expression, Type, MethodInfo) |
UnaryExpression Tworzy element reprezentujący operację konwersji, która zgłasza wyjątek, jeśli typ docelowy jest przepełniony i dla którego określono metodę implementującą. |
ConvertChecked(Expression, Type)
- Źródło:
- UnaryExpression.cs
- Źródło:
- UnaryExpression.cs
- Źródło:
- UnaryExpression.cs
Tworzy obiekt UnaryExpression reprezentujący operację konwersji, która zgłasza wyjątek, jeśli typ docelowy jest przepełniony.
public:
static System::Linq::Expressions::UnaryExpression ^ ConvertChecked(System::Linq::Expressions::Expression ^ expression, Type ^ type);
public static System.Linq.Expressions.UnaryExpression ConvertChecked (System.Linq.Expressions.Expression expression, Type type);
static member ConvertChecked : System.Linq.Expressions.Expression * Type -> System.Linq.Expressions.UnaryExpression
Public Shared Function ConvertChecked (expression As Expression, type As Type) As UnaryExpression
Parametry
- expression
- Expression
Element , Expression aby ustawić właściwość równą Operand .
Zwraca
WłaściwośćUnaryExpression, która ma właściwość równą ConvertCheckedNodeType właściwości i i TypeOperand ustawioną na określone wartości.
Wyjątki
expression lub type to null.
Nie zdefiniowano operatora konwersji między elementami expression. Wpisz i type.
Uwagi
Właściwość Method wynikowej UnaryExpression jest ustawiona na metodę implementowania. Właściwość IsLiftedToNull to false. Jeśli węzeł zostanie zniesiony, IsLifted to .true W przeciwnym razie jest falseto .
Metoda implementująca
Następujące reguły określają metodę implementowania operacji:
Jeśli albo
expression. Typ lubtypejest typem zdefiniowanym przez użytkownika, który definiuje niejawny lub jawny operator konwersji, MethodInfo który reprezentuje ten operator jest metodą implementowania.W przeciwnym razie:
Jeśli oba
expression. Wpisz itypereprezentuje typy liczbowe lub logiczne albo typy wyliczalne o wartości null lub niezwiązane z wartością null, metoda implementowania tonull.Jeśli albo
expression. Typ lubtypejest typem referencyjnym, a jawne boxing, rozpakowywanie lub konwersja odwołania istnieje zexpressionklasy . Wpisz wartośćtype, metoda implementowania tonull.
Podniesione i niepodniesione
Jeśli metoda implementowania nie nulljest :
Jeśli
expression. Typ jest przypisywany do typu argumentu metody implementowania, a zwracany typ metody implementowania można przypisać dotypeelementu , węzeł nie zostanie zniesiony.Jeśli jeden lub oba z .
expressionTyp lubtypeto typ wartości dopuszczający wartość null, a odpowiadające im typy wartości niepustych są równe typowi argumentu i zwracanym typowi metody implementowania, węzeł zostanie zniesiony.
Jeśli metoda implementowania to null:
Jeśli oba
expression. Wpisz itypenie ma wartości null, węzeł nie zostanie zniesiony.W przeciwnym razie węzeł zostanie zniesiony.
Dotyczy
ConvertChecked(Expression, Type, MethodInfo)
- Źródło:
- UnaryExpression.cs
- Źródło:
- UnaryExpression.cs
- Źródło:
- UnaryExpression.cs
UnaryExpression Tworzy element reprezentujący operację konwersji, która zgłasza wyjątek, jeśli typ docelowy jest przepełniony i dla którego określono metodę implementującą.
public:
static System::Linq::Expressions::UnaryExpression ^ ConvertChecked(System::Linq::Expressions::Expression ^ expression, Type ^ type, System::Reflection::MethodInfo ^ method);
public static System.Linq.Expressions.UnaryExpression ConvertChecked (System.Linq.Expressions.Expression expression, Type type, System.Reflection.MethodInfo method);
public static System.Linq.Expressions.UnaryExpression ConvertChecked (System.Linq.Expressions.Expression expression, Type type, System.Reflection.MethodInfo? method);
static member ConvertChecked : System.Linq.Expressions.Expression * Type * System.Reflection.MethodInfo -> System.Linq.Expressions.UnaryExpression
Public Shared Function ConvertChecked (expression As Expression, type As Type, method As MethodInfo) As UnaryExpression
Parametry
- expression
- Expression
Element , Expression aby ustawić właściwość równą Operand .
- method
- MethodInfo
A MethodInfo , aby ustawić właściwość równą Method .
Zwraca
WłaściwośćUnaryExpression, która ma właściwość równą ConvertCheckedNodeType wartościom , i OperandType, i Method ustawioną na określone wartości.
Wyjątki
expression lub type to null.
method nie null jest i metoda, która reprezentuje zwraca voidwartość , nie static jest (Shared w Visual Basic) lub nie bierze dokładnie jednego argumentu.
Nie zdefiniowano operatora konwersji między elementami expression. Wpisz i type.
-lub-
expression. Typ nie można przypisać do typu argumentu metody reprezentowanej przez .method
-lub-
Zwracany typ metody reprezentowanej przez method program nie można przypisać do typeelementu .
-lub-
expression. Typ lub type jest typem wartości dopuszczalnej wartości null, a odpowiadający mu typ wartości bez wartości null nie jest równy typowi argumentu ani typowi zwracanemu, odpowiednio, metody reprezentowanej przez methodmetodę .
Znaleziono więcej niż jedną metodę zgodną z opisem method .
Uwagi
Właściwość Method wynikowej UnaryExpression jest ustawiona na metodę implementowania. Właściwość IsLiftedToNull to false. Jeśli węzeł zostanie zniesiony, IsLifted to .true W przeciwnym razie jest falseto .
Metoda implementująca
Następujące reguły określają metodę implementowania operacji:
Jeśli metoda nie
nulljest , jest to metoda implementowania. Musi reprezentować metodę niepustą (staticSharedw Visual Basic), która przyjmuje jeden argument.W przeciwnym razie, jeśli albo
expression. Typ lubtypejest typem zdefiniowanym przez użytkownika, który definiuje niejawny lub jawny operator konwersji, MethodInfo który reprezentuje ten operator jest metodą implementowania.W przeciwnym razie:
Jeśli oba
expression. Wpisz itypereprezentuje typy liczbowe lub logiczne albo typy wyliczalne o wartości null lub niezwiązane z wartością null, metoda implementowania tonull.Jeśli albo
expression. Typ lubtypejest typem referencyjnym, a jawne boxing, rozpakowywanie lub konwersja odwołania istnieje zexpressionklasy . Wpisz wartośćtype, metoda implementowania tonull.
Podniesione i niepodniesione
Jeśli metoda implementowania nie nulljest :
Jeśli
expression. Typ jest przypisywany do typu argumentu metody implementowania, a zwracany typ metody implementowania można przypisać dotypeelementu , węzeł nie zostanie zniesiony.Jeśli jeden lub oba z .
expressionTyp lubtypeto typ wartości dopuszczający wartość null, a odpowiadające im typy wartości niepustych są równe typowi argumentu i zwracanym typowi metody implementowania, węzeł zostanie zniesiony.
Jeśli metoda implementowania to null:
Jeśli oba
expression. Wpisz itypenie ma wartości null, węzeł nie zostanie zniesiony.W przeciwnym razie węzeł zostanie zniesiony.