Проблема с действием <T1, T2> и передачей нескольких параметров - PullRequest
4 голосов
/ 27 марта 2010

У меня есть этот код:

        s(x => x.Open());

s - это метод, который вызывает один параметр, что прекрасно, например:

 public void s(Action<p1> action) {}

Игнорирование соглашений об именах, если я сделаю метод, подобный приведенному ниже:

 public void s(Action<p1, p2> action) {}

Как мне передать более одного параметра? Из интереса, есть ли способ использовать ключевое слово params с Action <>?

Кроме того, я использую C # 4.0, поэтому мне было бы интересно узнать, как это может мне помочь.

Спасибо

Ответы [ 2 ]

9 голосов
/ 27 марта 2010

Если вы хотите передать несколько параметров лямбда-выражению в C #, вам нужно заключить параметры в скобки. Например

s( (x,y) => x.Open(y) );
2 голосов
/ 27 марта 2010
s((x, y) => ...);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...