Все примеры, которые я могу найти о Func ‹> и Action‹>, просты, как в приведенном ниже, где вы видите, как они технически работают, но я бы хотел, чтобы они использовались. в примерах, где они решают проблемы, которые ранее не могли быть решены или могли быть решены только более сложным способом, т. е. я знаю, как они работают, и я вижу, что они краткие и мощные, поэтому я хочу понимать их в более широком смысле того, какие проблемы они решают и как я могу использовать их при разработке приложений.
Какими способами (шаблонами) вы используете Func ‹> и Action‹> для решения реальных проблем?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace TestFunc8282
{
class Program
{
static void Main(string[] args)
{
//func with delegate
Func<string, string> convert = delegate(string s)
{
return s.ToUpper();
};
//func with lambda
Func<string, string> convert2 = s => s.Substring(3, 10);
//action
Action<int,string> recordIt = (i,title) =>
{
Console.WriteLine("--- {0}:",title);
Console.WriteLine("Adding five to {0}:", i);
Console.WriteLine(i + 5);
};
Console.WriteLine(convert("This is the first test."));
Console.WriteLine(convert2("This is the second test."));
recordIt(5, "First one");
recordIt(3, "Second one");
Console.ReadLine();
}
}
}