with type template method genérico generic create c# generics delegates

type - template c#



¿Qué es Action<string>? (6)

Aquí hay una pequeña y fácil introducción de Acción:

http://www.c-sharpcorner.com/UploadFile/rmcochran/anonymousMethods04022006141542PM/anonymousMethods.aspx

¿Qué es Action<string> , cómo se puede usar?



Es un delegado con un parámetro, esta es una cadena.

Útil porque significa que ya no tiene que crear delegados para acciones siempre que pueda usar una acción estándar (es decir, la cantidad de parámetros es fija, no hay valores predeterminados y solo puede usar una acción existente).


Este es un delegado a una función con la firma void Bla(string parameter) . Puedes usar esto para pasar funciones a otras funciones. Por ejemplo puedes hacer esto

Action<string> action = (x => Console.WriteLine(x)); new List<string>{"1","2","3"}.ForEach(action);

para imprimir todos los caracteres a la consola


Action es un delegado estándar que tiene de uno a 4 parámetros (16 en .NET 4) y no devuelve valor. Se utiliza para representar una acción.

Action<String> print = (x) => Console.WriteLine(x); List<String> names = new List<String> { "pierre", "paul", "jacques" }; names.ForEach(print);

Hay otros delegados predefinidos:

  • Predicate , delegado que tiene un parámetro y devuelve un booleano.

    Predicate<int> predicate = ((number) => number > 2); var list = new List<int> { 1, 1, 2, 3 }; var newList = list.FindAll(predicate);

  • Func es el más genérico, tiene de 1 a 4 parámetros (16 en .NET 4) y devuelve algo


public void ValidateInput(string input) { //some code } public void test() { Action<string> action = ValidateInput; }