Auf Englisch lesen

Freigeben über


MethodCallExpression Klasse

Definition

Stellt einen Aufruf für eine statische Methode oder für eine Instanzmethode dar.

C#
public class MethodCallExpression : System.Linq.Expressions.Expression, System.Linq.Expressions.IArgumentProvider
C#
public sealed class MethodCallExpression : System.Linq.Expressions.Expression
C#
public class MethodCallExpression : System.Linq.Expressions.Expression
Vererbung
MethodCallExpression
Implementiert

Beispiele

Im folgenden Beispiel wird ein MethodCallExpression -Objekt erstellt, das die Indizierung in ein zweidimensionales Array darstellt.

C#
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)

Hinweise

Verwenden Sie die CallMethode , ArrayIndexoder ArrayIndex factory, um eine MethodCallExpressionzu erstellen.

Der Wert der NodeType -Eigenschaft eines MethodCallExpression -Objekts ist Call.

Eigenschaften

Arguments

Ruft eine Auflistung von Ausdrücken ab, die Argumente der aufgerufenen Methode darstellen.

CanReduce

Gibt an, dass der Knoten zu einem einfacheren Knoten reduziert werden kann. Wenn true zurückgegeben wird, kann Reduce() aufgerufen werden, um das reduzierte Formular zu erzeugen.

(Geerbt von Expression)
Method

Ruft die MethodInfo für die Methode ab, die aufgerufen werden soll.

NodeType

Gibt den Knotentyp dieses Expression zurück.

NodeType

Ruft den Knotentyp dieses Expression ab.

(Geerbt von Expression)
Object

Ruft den Expression ab, der die Instanz für Instanzmethodenaufrufe darstellt oder NULL für statische Methodenaufrufe ab.

Type

Ruft den statischen Typ des Ausdrucks ab, den dieser Expression darstellt.

Type

Ruft den statischen Typ des Ausdrucks ab, den dieser Expression darstellt.

(Geerbt von Expression)

Methoden

Accept(ExpressionVisitor)

Sendet an die spezifische Visit-Methode für diesen Knotentyp. Beispielsweise ruft MethodCallExpression die Methode VisitMethodCall(MethodCallExpression) auf.

Accept(ExpressionVisitor)

Sendet an die spezifische Visit-Methode für diesen Knotentyp. Beispielsweise ruft MethodCallExpression die Methode VisitMethodCall(MethodCallExpression) auf.

(Geerbt von Expression)
Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
Reduce()

Reduziert diesen Knoten zu einem einfacheren Ausdruck. Wenn CanReduce true zurückgibt, sollte ein gültiger Ausdruck zurückgegeben werden. Diese Methode kann einen anderen Knoten zurückgeben, der selbst reduziert werden muss.

(Geerbt von Expression)
ReduceAndCheck()

Reduziert diesen Knoten zu einem einfacheren Ausdruck. Wenn CanReduce true zurückgibt, sollte ein gültiger Ausdruck zurückgegeben werden. Diese Methode kann einen anderen Knoten zurückgeben, der selbst reduziert werden muss.

(Geerbt von Expression)
ReduceExtensions()

Reduziert den Ausdruck zu einem bekannten Knotentyp (kein Erweiterungsknoten) oder gibt nur den Ausdruck zurück, wenn es sich um einen bereits bekannten Typ handelt.

(Geerbt von Expression)
ToString()

Gibt eine Textdarstellung des Expression zurück.

(Geerbt von Expression)
Update(Expression, IEnumerable<Expression>)

Erstellt einen neuen Ausdruck, der diesem ähnelt, verwendet jedoch die angegebenen untergeordneten Elemente. Wenn alle untergeordneten Elemente identisch sind, wird dieser Ausdruck zurückgegeben.

VisitChildren(ExpressionVisitor)

Reduziert den Knoten und ruft dann den Visitor-Delegaten für den reduzierten Ausdruck auf. Die Methode löst eine Ausnahme aus, wenn der Knoten nicht reduziert werden kann.

(Geerbt von Expression)

Explizite Schnittstellenimplementierungen

IArgumentProvider.ArgumentCount

Gibt die Anzahl der Argumente für den Ausdrucksstrukturknoten zurück. Sie sollten diesen Member nicht verwenden. Es ist nur aufgrund der Assemblyumgestaltung öffentlich und wird intern zur Leistungsoptimierung verwendet.

IArgumentProvider.GetArgument(Int32)

Gibt das Argument bei Index zurück, das ausgelöst wird, wenn der Index außerhalb des gültigen Bereichs liegt. Sie sollten diesen Member nicht verwenden. Es ist nur aufgrund der Assemblyumgestaltung öffentlich und wird intern zur Leistungsoptimierung verwendet.

Gilt für:

Produkt Versionen
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0