2015-10-16 80 views
2

我在想你是否可以将一个列表传递给ParamArray参数的方法?例如。你可以通过一个ParamArray参数列表

dt = ws.getTable("baseDivision.code:1", 
    "countryCode:CA", 
    "status.code:[1+TO+6]", 
    "buType.code:(6+7+8+88)", 
    "market.code:[0+TO+*]", 
    "region.code:[0+TO+*]", 
    "!subDivision.code:null", 
    "openDate:[*+TO+NOW%2B1MONTH]") 

而不是传递这些参数可以传递一个字符串列表,其中每个元素包含这些参数。

所以还挺喜欢这个

dt = ws.getTable(aListOfStringParamters) 

回答

2

是的,但参数必须是一个数组。如果参数是一些其他类型的可枚举列表,那么你可以使用LINQ的ToArray扩展方法将其转换:

dt = ws.getTable(aListOfStringParamters.ToArray()) 
+0

所以答案是'No' :) – Fabio

+0

@Fabio嗯,这取决于你是否会将数组称为“列表”。数组确实包含一个项目列表,所以它们通常是这样。而且,因为在.NET Framework中,数组实际上实现了'IList'接口,所以将它们也称为列表在技术上也是精确的。 :) –

+0

谢谢@StevenDoggart这为我节省了数百行代码,我没有这样想过:) – PopperJuan

相关问题