Tous les exemples que je peux trouver sur Func<> et Action<> sont simple comme dans l'exemple ci-dessous où l'on voit comment ils fonctionnent techniquement, mais j'aimerais qu'ils soient utilisés dans des exemples où ils résolvent des problèmes qui ne pouvaient pas être résolus auparavant ou qui ne pouvaient l'être que d'une manière plus complexe, c'est-à-dire que je sais comment ils fonctionnent et je peux voir qu'ils sont efficaces. laconique et puissant Je veux donc les comprendre d'un point de vue sens plus large des types de problèmes qu'ils résolvent et de la manière dont je pourrais les utiliser dans la conception d'applications.
De quelles manières (modèles) utilisez-vous Func<> et Action<> pour résoudre des problèmes réels ?
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();
}
}
}