将数组作为单个值传递给params

时间:2010-10-27 10:32:45

标签: c# .net

我调用的函数采用与string.format相同的形式,其中第一个参数是字符串,余数是替换值。我有变量中的字符串和数组中的替换值,如何在给定数组中的任意对象的情况下调用此函数?简单地传入数组作为最后一个参数不起作用。

3 个答案:

答案 0 :(得分:9)

使用params关键字:

public string MyMethod(string value, params object[] args)
{
     // as an example
     return string.Format(value, args);
}

然后你可以用个别值来调用它

MyMethod("Test", "value1", "value2");

或使用数组

MyMethod("Test", new [] { "value1", "value2" });

答案 1 :(得分:3)

您需要使用params关键字

答案 2 :(得分:0)

我正在调用的函数有签名

public static IQueryable Where(this IQueryable source, string predicate, params object[] values)

问题是我传入了一组int作为最后一个参数。当我创建一个从该初始数组中弹出的新对象数组并将其传递给它时就可以了。谢谢你的回答