, И второй аргумент должен быть двухэлементным массивом, содержащим то, что в данный момент является вашим вторым и третьим аргументами
аюсь вызвать 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?