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 false
to .
Metoda implementująca
Następujące reguły określają metodę implementowania operacji:
Jeśli albo
expression
. Typ lubtype
jest 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 itype
reprezentuje 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 lubtype
jest typem referencyjnym, a jawne boxing, rozpakowywanie lub konwersja odwołania istnieje zexpression
klasy . Wpisz wartośćtype
, metoda implementowania tonull
.
Podniesione i niepodniesione
Jeśli metoda implementowania nie null
jest :
Jeśli
expression
. Typ jest przypisywany do typu argumentu metody implementowania, a zwracany typ metody implementowania można przypisać dotype
elementu , węzeł nie zostanie zniesiony.Jeśli jeden lub oba z .
expression
Typ lubtype
to 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 itype
nie 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 void
wartość , 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 type
elementu .
-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 method
metodę .
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 false
to .
Metoda implementująca
Następujące reguły określają metodę implementowania operacji:
Jeśli metoda nie
null
jest , jest to metoda implementowania. Musi reprezentować metodę niepustą (static
Shared
w Visual Basic), która przyjmuje jeden argument.W przeciwnym razie, jeśli albo
expression
. Typ lubtype
jest 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 itype
reprezentuje 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 lubtype
jest typem referencyjnym, a jawne boxing, rozpakowywanie lub konwersja odwołania istnieje zexpression
klasy . Wpisz wartośćtype
, metoda implementowania tonull
.
Podniesione i niepodniesione
Jeśli metoda implementowania nie null
jest :
Jeśli
expression
. Typ jest przypisywany do typu argumentu metody implementowania, a zwracany typ metody implementowania można przypisać dotype
elementu , węzeł nie zostanie zniesiony.Jeśli jeden lub oba z .
expression
Typ lubtype
to 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 itype
nie ma wartości null, węzeł nie zostanie zniesiony.W przeciwnym razie węzeł zostanie zniesiony.