я в конечном итоге с двумя процедурами, с очень похожими аргументами и одинаковой функциональностью, аргументами которых являются следующие:Проходя через массив Params к другому методу
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[]
другим типом коллекции, а не тем временем прошедшего времени, но было бы интересно узнать, возможно ли то, что я пытаюсь сделать, если это не так, не стесняйтесь состояние «нет» и предоставить ссылки)
Вы близко, я был немного глупым - когда я создал свою упрощенную версию, мне удалось случайно ** не совершить ошибку, которая была в живом коде. –