воскресенье, 9 января 2022 г.

Action

 

Использование Action

Также как и Func делегат Action имеет пять перегрузок по сигнатурам, которые позволяют использовать до четырех параметров, но при этом Action не возвращает никаких значений. А самое интересное, что параметром для Action может быть любой тип для любого из параметров в сигнатуре.

public delegate void Action()
public delegate void Action<T, >(T arg)
public delegate void Action<T1, T2>(T1 arg1, T2 arg2)
public delegate void Action<T1, T2, T3>(T1 arg1, T2 arg2, T3 arg3)
public delegate void Action<T1, T2, T3, T4>(T1 arg1, T2 arg2, T3 arg3, T4 arg4)

Простой пример использования:

Action showMessage = delegate { Console.WriteLine("Hello!"); };
showMessage();

и через лямбда-выражения:

Action showMessaga2 = () => { Console.WriteLine("Hello world!"); };
showMessaga2();

Теперь посмотрите, как использовать в делегате Action параметры:

Action<string> sm1 = delegate(string m) { Console.WriteLine(m); };
sm1("Wow");

и через лямбда-выражения:

Action<string, string> sm2 = (txt, txt2) => { Console.WriteLine(String.Format("{0} {1}!", txt, txt2)); };
sm2("Привет", "Мир");

Просто всё как! Не правда ли?!

Комментариев нет:

Отправить комментарий

Паттерн 'Репозиторий' в ASP.NET

  Последнее обновление: 1.11.2015         Одним из наиболее часто используемых паттернов при работе с данными является паттерн 'Репозито...