Expression.Call Method (Expression, String, Type(), Expression())
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Creates a MethodCallExpression that represents a call to an instance method by calling the appropriate factory method.
Assembly: System.Core (in System.Core.dll)
'Declaration Public Shared Function Call ( _ instance As Expression, _ methodName As String, _ typeArguments As Type(), _ ParamArray arguments As Expression() _ ) As MethodCallExpression
Parameters
- instance
- Type: System.Linq.Expressions.Expression
An Expression whose Type property value will be searched for a specific method.
- methodName
- Type: System.String
The name of the method.
- typeArguments
- Type:
System.Type
()
An array of Type objects that specify the type parameters of the generic method. This argument should be null when methodName specifies a non-generic method.
- arguments
- Type:
System.Linq.Expressions.Expression
()
An array of Expression objects that represents the arguments to the method.
Return Value
Type: System.Linq.Expressions.MethodCallExpressionA MethodCallExpression that has the NodeType property equal to Call, the Object property equal to instance, Method set to the MethodInfo that represents the specified instance method, and Arguments set to the specified arguments.
| Exception | Condition |
|---|---|
| ArgumentNullException | instance or methodName is Nothing. |
| InvalidOperationException | No method whose name is methodName, whose type parameters match typeArguments, and whose parameter types match arguments is found in instance.Type or its base types. -or- More than one method whose name is methodName, whose type parameters match typeArguments, and whose parameter types match arguments is found in instance.Type or its base types. |
The Type property of the resulting MethodCallExpression is equal to the return type of the method denoted by methodName.