将多个可选parameter passing给C#函数
有没有办法设置一个C#函数接受任何数量的参数? 例如,你可以设置一个function,以下所有的工作 –
x = AddUp(2, 3) x = AddUp(5, 7, 8, 2) x = AddUp(43, 545, 23, 656, 23, 64, 234, 44)  使用参数数组和params修饰符: 
 public static int AddUp(params int[] values) { int sum = 0; foreach (int value in values) { sum += value; } return sum; } 
如果要确保至less有一个值(而不是可能为空的数组),则分别指定:
 public static int AddUp(int firstValue, params int[] values) 
  (在实现firstValue sum设置为firstValue ) 
请注意,您还应该以普通的方式检查数组引用的无效性。 在该方法中,参数是一个完美的普通数组。 调用方法时,参数数组修饰符只会有所不同。 基本上编译器变成:
 int x = AddUp(4, 5, 6); 
变成类似于:
 int[] tmp = new int[] { 4, 5, 6 }; int x = AddUp(tmp); 
你可以用一个完全正常的数组来调用它 – 所以后者的语法在源代码中也是有效的。
C#4.0还支持可选参数,在其他一些情况下可能会有用。 看到这篇文章。