, И второй аргумент должен быть двухэлементным массивом, содержащим то, что в данный момент является вашим вторым и третьим аргументами

аюсь вызвать String.Format с помощью в дереве Linq.Expression. Вот быстрый пример:

    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);

Проблема, однако, заключается в том, что String.Format имеет подпись:

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

и я пытаюсь передать в Expression [].

Теперь я мог бы пройти через все трудности создания массива, заполнив его результатами своих выражений, но я действительно хочу, чтобы результат был чем-то вроде этого:

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

Как мне вызвать функцию params через выражения Linq?