Calling (objeto de parâmetro []) com Expressão []

Estou tentando chamar String.Format de com em uma árvore Linq.Expression. Aqui está um exemplo rápido:

    var format = Expression.Constant("({0}) {1}");
    var company = Expression.Property(input, membernames.First());
    var project = Expression.Property(input, membernames.Last());
    var args = new Expression[] {format, company, project};
    var invoke = Expression.Call(method,args);

A questão, no entanto, é que String.Format tem a assinatura de:

String.Format(string format, params object[] args)

e eu estou tentando passar na expressão [].

gora, eu poderia passar por todo o trabalho de criar uma matriz, preenchendo-a com os resultados das minhas expressões, mas o que realmente quero que seja o resultado é algo como ist

String.Format("({0}) {1}", input.foo, input.bar)

Como faço para chamar uma função de parâmetros via Expressões Linq?

questionAnswers(2)

yourAnswerToTheQuestion