Invocación dinámica de un método usando parámetros nombrados

Actualmente estamos usando .NET 3.5 y parte de nuestra aplicación usa la invocación dinámica (usandoMethodBase.Invoke)

Me pregunto si es posible mezclar en Parámetros Nombrados (en .NET 4) con invocación dinámica, para realizar algo similar a:

// Dictionary that holds parameter name --> object mapping
var parameters = new Dictionary<string, object>();

// Add parameters ....

// Invoke where each parameter will match the one from the method signature.
methodInfo.Invoke(obj, parameters);

¿Hay alguna API que permita esta opción fuera de la caja? Si no, ¿es posible desarrollar alguna solución para realizar esto?

EDITAR:

Al reconsiderar este problema, suena similar a la forma en que el compilador puede realmente necesitar coincidir con las llamadas de método basadas en listas de argumentos. Tal vez haya alguna API del compilador (o el nuevo proyecto de Roslyn) que permita hacer esto fácilmente. (sin codificarlo yo mismo, que puede ser propenso a errores).

Respuestas a la pregunta(3)

Su respuesta a la pregunta