Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

Expression.Call-Methode: (Expression, MethodInfo, Expression[])

 

Erstellt eine MethodCallExpression, die einen Aufruf einer Methode darstellt, die Argumente akzeptiert.

Namespace:   System.Linq.Expressions
Assembly:  System.Core (in System.Core.dll)

public static MethodCallExpression Call(
	Expression instance,
	MethodInfo method,
	params Expression[] arguments
)

Parameter

instance
Type: System.Linq.Expressions.Expression

Ein Expression, das die Instanz für einen Instanzmethodenaufruf angibt (übergeben Sie null für eine static-Methode bzw. in Visual Basic eine Shared-Methode).

method
Type: System.Reflection.MethodInfo

Ein MethodInfo, auf das die Method-Eigenschaft festgelegt werden soll.

arguments
Type: System.Linq.Expressions.Expression[]

Ein Array von Expression-Objekten, mit denen die Arguments-Auflistung aufgefüllt wird.

Rückgabewert

Type: System.Linq.Expressions.MethodCallExpression

Ein MethodCallExpression, bei dem die NodeType-Eigenschaft gleich Call ist und die Eigenschaften Object, Method und Arguments auf die angegebenen Werte festgelegt sind.

Exception Condition
ArgumentNullException

method ist null.

- oder -

instance ist null, und method stellt eine Instanzmethode dar.

- oder -

arguments ist nicht null, und mindestens ein Element davon ist null.

ArgumentException

instance.Type kann dem deklarierenden Typ der durch method dargestellten Methode nicht zugewiesen werden.

- oder -

Die Anzahl der Elemente in arguments stimmt nicht mit der Anzahl der Parameter für die durch method dargestellte Methode dar.

- oder -

Mindestens ein Element von arguments kann nicht dem entsprechenden Parameter für die durch method dargestellte Methode zugewiesen werden.

To represent a call to a static (Shared in Visual Basic) method, pass in null for the instance parameter when you call this method, or call M:System.Linq.Expressions.Expression.Call(System.Reflection.MethodInfo,System.Linq.Expressions.Expression[]) instead.

If method represents an instance method, the P:System.Linq.Expressions.Expression.Type property of instance must be assignable to the declaring type of the method represented by method.

If arguments is not null, it must have the same number of elements as the number of parameters for the method represented by method. Each element in arguments must not be null and must be assignable to the corresponding parameter of method, possibly after quoting.

System_CAPS_noteHinweis

An element will be quoted only if the corresponding method parameter is of type T:System.Linq.Expressions.Expression. Quoting means the element is wrapped in a F:System.Linq.Expressions.ExpressionType.Quote node. The resulting node is a T:System.Linq.Expressions.UnaryExpression whose P:System.Linq.Expressions.UnaryExpression.Operand property is the element of arguments.

The P:System.Linq.Expressions.MethodCallExpression.Arguments property of the resulting T:System.Linq.Expressions.MethodCallExpression is empty if arguments is null. Otherwise, it contains the same elements as arguments, some of which may be quoted.

The P:System.Linq.Expressions.Expression.Type property of the resulting T:System.Linq.Expressions.MethodCallExpression is equal to the return type of the method represented by method.

Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 3.5
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.0
Windows Phone
Verfügbar seit 8.1
Zurück zum Anfang
Anzeigen: