/// <summary>
 /// Visits a <see cref="SerializableMethodCallExpression"/>.
 /// </summary>
 /// <param name="expression"><see cref="SerializableMethodCallExpression"/> to visit.</param>
 /// <returns>Returns the converted <see cref="Expression"/>.</returns>
 protected abstract Expression VisitSerializableMethodCallExpression(SerializableMethodCallExpression expression);
Example #2
0
 /// <summary>
 /// Executes a <see cref="SerializableMethodCallExpression"/> and returns the result.
 /// </summary>
 /// <param name="expression"><see cref="SerializableMethodCallExpression"/> to convert.</param>
 /// <returns>Returns the result of a <see cref="SerializableMethodCallExpression"/>.</returns>
 protected abstract object GetResultMethodCallExpression(SerializableMethodCallExpression expression);
Example #3
0
 /// <summary>
 /// Visits a <see cref="SerializableMethodCallExpression"/>.
 /// </summary>
 /// <param name="expression"><see cref="SerializableMethodCallExpression"/> to visit.</param>
 /// <returns>Returns the converted <see cref="Expression"/>.</returns>
 protected override Expression VisitSerializableMethodCallExpression(SerializableMethodCallExpression expression)
 {
     return(Expression.Call(Visit(expression.Object), (MethodInfo)expression.Method.GetClrVersion(), VisitCollection <Expression>(expression.Arguments)));
 }
Example #4
0
 /// <summary>
 /// Executes a <see cref="SerializableMethodCallExpression"/> and returns the result.
 /// </summary>
 /// <param name="expression"><see cref="SerializableMethodCallExpression"/> to convert.</param>
 /// <returns>Returns the result of a <see cref="SerializableMethodCallExpression"/>.</returns>
 protected override object GetResultMethodCallExpression(SerializableMethodCallExpression expression, object sessionObject)
 {
     return(InvokeMethodCall(expression, sessionObject));
 }
 private Expression VisitMethodCall(SerializableMethodCallExpression mc)
 {
     return(Expression.Call(Visit(mc.Object), mc.Method, VisitExpressionSequence(mc.Arguments)));
 }