«Эй, используйте список параметров или используйте параметр», но проблема не возникает. У меня есть функции, которые не принимают ни одного параметра, одного или многих целых чисел ... пользователь вводит имя функции и список параметров, и я хочу вызвать функцию и предоставить ей список. Для Exemple:C# передать список как функцию параметра
//void AddUser(int32 age, String name)
List<dynamic> UserList = new List<dynamic>();
UserList.Add(42); UserList.Add("toto");
String FunctionEntered = "AddPerson";
MyFramwork.Call(FunctionEntered, UserList);
//gives UserList(List)
И я не могу изменить функцию вводится, чтобы позволить ему взять список динамических значений в качестве параметров. Поэтому мне нужно решение для вызова функции (я не знаю числа параметров) и использую индекс 1,2, ... списка как первый, второй, ... параметр.
Спасибо.
PS: не беспокойтесь, моя инфраструктура позволяет мне вызвать неизвестную функцию, просто используя ее имя.
Редактировать: я попробую уточнить, у меня есть список, и я хочу вызвать функцию с этим списком в качестве параметра, но функция, которую я хочу вызвать, не принимает списки как параметр (и я не могу изменить функцию). Например, я хочу использовать List {a, b} как параметр Sum (int a, int b), но я не могу изменить функцию, поэтому я не могу заменить функцию Sum (int [] ab) или Sum (List ab), и количество аргументов является переменной, поэтому я не могу вызвать: Sum (myList [0], myList [1]).
Использование отражения, найти соответствующий метод по его имени («AddPerson»), а затем вызвать этот метод прохождения списка и другие возможные параметры в качестве аргументов. –
Я честно не понимаю, в чем ваша проблема и чего вы хотите достичь. Вы можете немного уточнить свой вопрос? –