Expression.ConvertChecked メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
変換後の型がオーバーフローした場合に例外をスローする変換演算を表す UnaryExpression を作成します。
オーバーロード
ConvertChecked(Expression, Type) |
変換後の型がオーバーフローした場合に例外をスローする変換演算を表す UnaryExpression を作成します。 |
ConvertChecked(Expression, Type, MethodInfo) |
変換後の型がオーバーフローした場合に例外をスローし、実装メソッドが指定される変換演算を表す UnaryExpression を作成します。 |
ConvertChecked(Expression, Type)
変換後の型がオーバーフローした場合に例外をスローする変換演算を表す UnaryExpression を作成します。
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
パラメーター
- expression
- Expression
Expression プロパティを等しく設定する Operand。
戻り値
UnaryExpression と等しい NodeType プロパティと、指定した値に設定された ConvertChecked プロパティおよび Operand プロパティを含む Type。
例外
expression
または type
が null
です。
expression
.Type と type
の間には変換演算子が定義されていません。
注釈
結果UnaryExpressionのプロパティはMethod、実装メソッドに設定されます。 IsLiftedToNull プロパティが false
です。 ノードが持ち上げられた場合、 IsLifted 次の値になります true
。 それ以外の場合は、false
となります。
メソッドの実装
次の規則は、操作の実装方法を決定します。
どちらかの
expression
場合.型またはtype
暗黙的または明示的な変換演算子を定義するユーザー定義型です。その演算子 MethodInfo を表す型は実装メソッドです。それ以外の場合:
両方の
expression
場合.type
実装メソッドはnull
、数値型またはブール型、または null 許容または null 非許容列挙型を表します。どちらかの
expression
場合.型またはtype
参照型であり、明示的なボックス化、ボックス化解除、または参照変換がexpression
存在します。型を指定するとtype
、実装メソッドはnull
.
持ち上げと非リフト
実装方法が次ではない null
場合:
If
expression
.型は実装メソッドの引数型に割り当て可能で、実装メソッドの戻り値の型は代入可能type
です。ノードはリフトされません。の一方または両方の
expression
場合。型またはtype
null 許容値型であり、対応する null 非許容値型は、それぞれ実装メソッドの引数型と戻り値型と等しく、ノードはリフトされます。
実装方法が次の場合:null
両方の
expression
場合.型でありtype
、null 許容でない場合、ノードはリフトされません。それ以外の場合、ノードはリフトされます。
適用対象
ConvertChecked(Expression, Type, MethodInfo)
変換後の型がオーバーフローした場合に例外をスローし、実装メソッドが指定される変換演算を表す UnaryExpression を作成します。
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
パラメーター
- expression
- Expression
Expression プロパティを等しく設定する Operand。
- method
- MethodInfo
MethodInfo プロパティを等しく設定する Method。
戻り値
UnaryExpression と等しい NodeType プロパティと、指定した値に設定された ConvertChecked、Operand、および Type の各プロパティを含む Method。
例外
expression
または type
が null
です。
method
は null
ではなく、それが表すメソッドは void
を返し、static
(Visual Basic では Shared
) ではないか、受け取る引数が 1 つだけではありません。
expression
.Type と type
の間には変換演算子が定義されていません。
または -
expression
.Type は、method
によって表されるメソッドの引数型に代入できません。または -
method
によって表されるメソッドの戻り値の型は、type
に代入できません。または -
expression
.Type またはtype
は null 許容値型で、対応する null 非許容値型はmethod
によって表されるメソッドそれぞれの、引数型または戻り値の型と等しくありません。
method
記述に一致する複数のメソッドが見つかりました。
注釈
結果UnaryExpressionのプロパティはMethod、実装メソッドに設定されます。 IsLiftedToNull プロパティが false
です。 ノードが持ち上げられた場合、 IsLifted 次の値になります true
。 それ以外の場合は、false
となります。
メソッドの実装
次の規則は、操作の実装方法を決定します。
メソッドがない
null
場合は、実装メソッドです。 これは、static
1 つの引数を受け取る非 void (Shared
Visual Basic) メソッドを表す必要があります。それ以外の場合は 、どちらか
expression
の場合は .型またはtype
暗黙的または明示的な変換演算子を定義するユーザー定義型です。その演算子 MethodInfo を表す型は実装メソッドです。それ以外の場合:
両方の
expression
場合.type
実装メソッドはnull
、数値型またはブール型、または null 許容または null 非許容列挙型を表します。どちらかの
expression
場合.型またはtype
参照型であり、明示的なボックス化、ボックス化解除、または参照変換がexpression
存在します。型を指定するとtype
、実装メソッドはnull
.
持ち上げと非リフト
実装方法が次ではない null
場合:
If
expression
.型は実装メソッドの引数型に割り当て可能で、実装メソッドの戻り値の型は代入可能type
です。ノードはリフトされません。の一方または両方の
expression
場合。型またはtype
null 許容値型であり、対応する null 非許容値型は、それぞれ実装メソッドの引数型と戻り値型と等しく、ノードはリフトされます。
実装方法が次の場合:null
両方の
expression
場合.型でありtype
、null 許容でない場合、ノードはリフトされません。それ以外の場合、ノードはリフトされます。