我最终得到了两个程序,它们具有非常相似的参数和相同的功能,其参数如下:
private string BuildResponse(string value1, string value2, params string[] parameters)
private string BuildResponse(MyObject values, params string[] parameters)
在这种情况下,MyObject
有两个属性; value1
和value2
。我最初尝试按如下方式实现第二个:
private string BuildResponse(MyObject values, params string[] parameters) {
return BuildResponse (values.value1, values.value2, parameters);
}
不幸的是,编译器发出了与best overloaded method match for ...
相关的警告 - 即我不能简单地通过parameters
(这是string[]
)。
那么 - 如何将string[]
传递给签名以params
变量结尾的方法?
(我现在用另一种集合类型替换params string[]
而不是过去时,但是知道我试图做的事情是否可能会很有趣。如果它不是' t,随意说“不”并提供参考资料)
答案 0 :(得分:3)
这应该有效。问题很可能是value1
或value2
不属于string
类型。 params
数组不是问题。