MethodCallExpression クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
静的メソッドまたはインスタンス メソッドへの呼び出しを表します。
public ref class MethodCallExpression : System::Linq::Expressions::Expression, System::Linq::Expressions::IArgumentProvider
public ref class MethodCallExpression sealed : System::Linq::Expressions::Expression
public ref class MethodCallExpression : System::Linq::Expressions::Expression
public class MethodCallExpression : System.Linq.Expressions.Expression, System.Linq.Expressions.IArgumentProvider
public sealed class MethodCallExpression : System.Linq.Expressions.Expression
public class MethodCallExpression : System.Linq.Expressions.Expression
type MethodCallExpression = class
inherit Expression
interface IArgumentProvider
type MethodCallExpression = class
inherit Expression
Public Class MethodCallExpression
Inherits Expression
Implements IArgumentProvider
Public NotInheritable Class MethodCallExpression
Inherits Expression
Public Class MethodCallExpression
Inherits Expression
- 継承
- 実装
例
次の例では、 MethodCallExpression 2 次元配列へのインデックス作成を表す オブジェクトを作成します。
string[,] gradeArray =
{ {"chemistry", "history", "mathematics"}, {"78", "61", "82"} };
System.Linq.Expressions.Expression arrayExpression =
System.Linq.Expressions.Expression.Constant(gradeArray);
// Create a MethodCallExpression that represents indexing
// into the two-dimensional array 'gradeArray' at (0, 2).
// Executing the expression would return "mathematics".
System.Linq.Expressions.MethodCallExpression methodCallExpression =
System.Linq.Expressions.Expression.ArrayIndex(
arrayExpression,
System.Linq.Expressions.Expression.Constant(0),
System.Linq.Expressions.Expression.Constant(2));
Console.WriteLine(methodCallExpression.ToString());
// This code produces the following output:
//
// value(System.String[,]).Get(0, 2)
Dim gradeArray(,) As String = _
{{"chemistry", "history", "mathematics"}, {"78", "61", "82"}}
Dim arrayExpression As System.Linq.Expressions.Expression = _
System.Linq.Expressions.Expression.Constant(gradeArray)
' Create a MethodCallExpression that represents indexing
' into the two-dimensional array 'gradeArray' at (0, 2).
' Executing the expression would return "mathematics".
Dim methodCallExpression As System.Linq.Expressions.MethodCallExpression = _
System.Linq.Expressions.Expression.ArrayIndex( _
arrayExpression, _
System.Linq.Expressions.Expression.Constant(0), _
System.Linq.Expressions.Expression.Constant(2))
Console.WriteLine(methodCallExpression.ToString())
' This code produces the following output:
'
' value(System.String[,]).Get(0, 2)
注釈
、、または ファクトリ メソッドをCallArrayIndex使用して を作成しますMethodCallExpression。ArrayIndex
オブジェクトの NodeType プロパティの MethodCallExpression 値は です Call。
プロパティ
Arguments |
呼び出されたメソッドの引数を表す式のコレクションを取得します。 |
CanReduce |
ノードをより単純なノードに変形できることを示します。 これが true を返す場合、Reduce() を呼び出して単純化された形式を生成できます。 (継承元 Expression) |
Method |
呼び出されるメソッドの MethodInfo を取得します。 |
NodeType |
この Expression のノード型を返します。 |
NodeType |
この Expression のノード型を取得します。 (継承元 Expression) |
Object |
インスタンス (インスタンス メソッド呼び出しの場合) または null (静的メソッド呼び出しの場合) を表す Expression を取得します。 |
Type |
この Expression が表す式の静的な型を取得します。 |
Type |
この Expression が表す式の静的な型を取得します。 (継承元 Expression) |
メソッド
Accept(ExpressionVisitor) |
このノード型の特定の Visit メソッドにデスパッチします。 たとえば、MethodCallExpression は VisitMethodCall(MethodCallExpression) を呼び出します。 |
Accept(ExpressionVisitor) |
このノード型の特定の Visit メソッドにデスパッチします。 たとえば、MethodCallExpression は VisitMethodCall(MethodCallExpression) を呼び出します。 (継承元 Expression) |
Equals(Object) |
指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
GetHashCode() |
既定のハッシュ関数として機能します。 (継承元 Object) |
GetType() |
現在のインスタンスの Type を取得します。 (継承元 Object) |
MemberwiseClone() |
現在の Object の簡易コピーを作成します。 (継承元 Object) |
Reduce() |
このノードをより単純な式に変形します。 CanReduce が true を返す場合、これは有効な式を返します。 このメソッドは、それ自体も単純化する必要がある別のノードを返す場合があります。 (継承元 Expression) |
ReduceAndCheck() |
このノードをより単純な式に変形します。 CanReduce が true を返す場合、これは有効な式を返します。 このメソッドは、それ自体も単純化する必要がある別のノードを返す場合があります。 (継承元 Expression) |
ReduceExtensions() |
式を既知のノード型 (拡張ノードではない型) に単純化し、それが既に既知の型である場合は単に式を返します。 (継承元 Expression) |
ToString() |
Expression のテキスト表現を返します。 (継承元 Expression) |
Update(Expression, IEnumerable<Expression>) |
これに似た式ですが、指定された子を使用する、新しい式を作成します。 すべての子が同じである場合、この式を返します。 |
VisitChildren(ExpressionVisitor) |
ノードを単純化し、単純化された式の visitor デリゲートを呼び出します。 ノードを単純化できない場合、このメソッドは例外をスローします。 (継承元 Expression) |
明示的なインターフェイスの実装
IArgumentProvider.ArgumentCount |
式ツリー ノードに引数の数を返します。 このメンバーを使用しないでください。 これは、アセンブリ リファクタリングのためパブリックのみで、パフォーマンスの最適化のために内部で使用されます。 |
IArgumentProvider.GetArgument(Int32) |
インデックスの引数を返し、インデックスが範囲外にある場合にスローします。 このメンバーを使用しないでください。 これは、アセンブリ リファクタリングのためパブリックのみで、パフォーマンスの最適化のために内部で使用されます。 |
適用対象
.NET