/// <inheritdoc /> protected internal override object Invoke(MethodInvocation invocation) { var targetMethod = MethodCache.GetMethodMap(TargetType, invocation.Method); var signature = new InvocationSignature( invocation.Method, targetMethod, DeclaringType, TargetType, invocation.Method.GetInvocationType()); return(Interceptor.Intercept( signature, invocation.MethodCall, invocation.Arguments, Target, invocation.TransparentProxy)); }