IRONSOFTWAREHOME
MISES À JOUR POUR LES DÉVELOPPEURS

C# Lambda Expressions (Comment ça fonctionne pour les développeurs)

Jacob Mellor, Directeur technique @ Team Iron
Jacob Mellor
Updated: 21 avril 2026

Dans le domaine de la programmation C#, les expressions lambda se démarquent comme l'une des fonctionnalités les plus puissantes. Ces constructions concises et expressives permettent aux développeurs d'écrire du code compact mais robuste, améliorant ainsi la lisibilité, la maintenabilité et l'efficacité globale.

Dans cet article, nous allons plonger profondément dans les expressions lambda C#, en explorant leur syntaxe, cas d'utilisation, avantages et techniques avancées. Nous explorerons également comment les capacités d'IronPDF de Iron Software peuvent générer un document PDF à la volée dans les applications C#.

Comprendre les Expressions Lambda

Les expressions lambda, introduites dans C# 3.0, offrent un moyen succinct de définir des fonctions anonymes ou des délégués. Ce sont essentiellement des fonctions anonymes en ligne qui peuvent être utilisées partout où un type délégué est attendu.

La syntaxe d'une expression lambda est :

(parameters) => expression // lambda expression syntax

Exemple :

x => x * x // lambda expression to square a number

Ici, parameters sont les paramètres d'entrée de l'expression lambda, et expression est l'instruction ou le bloc d'instructions à exécuter. Le common language runtime de .NET crée une fonction anonyme pour chaque expression lambda au moment de la compilation.

Utilisation de base

Regardons un exemple d'expression lambda où nous avons une liste d'entiers, et nous voulons filtrer les nombres pairs.

Nous pouvons y parvenir en utilisant la méthode List<t>.FindAll avec une expression lambda :

List<int> numbers = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
List<int> evenNumbers = numbers.FindAll(x => x % 2 == 0);

Dans l'exemple ci-dessus, x => x % 2 == 0 est une expression lambda qui prend un entier x comme paramètre d'entrée et retourne true si x est pair, et false sinon. L'expression du corps de la lambda est exécutée sur chaque élément de la liste.

Cas d'utilisation

L'utilisation d'une expression Lambda dans la programmation d'applications modernes trouve une variété de cas d'utilisation, y compris :

  1. Requêtes LINQ : les expressions lambda sont largement utilisées dans LINQ (Language Integrated Query) pour effectuer des opérations de filtrage, de projection, de tri et de regroupement sur des collections de données.
  2. Gestion des événements : lors de la manipulation d'événements et de délégués, les expressions lambda offrent une manière concise de définir des gestionnaires d'événements directement dans le code.
  3. Programmation asynchrone : Dans des modèles de programmation asynchrones comme Task.Run, les expressions lambda peuvent être utilisées pour définir l'opération asynchrone à exécuter.
  4. Programmation fonctionnelle : les expressions lambda prennent en charge les paradigmes de programmation fonctionnelle, permettant des opérations telles que map, filter et reduce sur les collections.

Types d'expressions Lambda

Expressions Lambdas

Les expressions lambda avec => sont appelées lambdas d'expression. Elles prennent le format :

x => x * x // expression to square a number

Dans l'exemple ci-dessus, nous créons un carré d'un nombre. Dans les expressions lambdas, le corps peut inclure des appels de méthode. Cependant, lors de la génération d'arbres d'expressions destinés à être évalués en dehors du Common Language Runtime .NET (CLR), comme dans SQL Server, il est conseillé d'éviter tout appel de méthode dans les expressions lambda.

Ceci est dû au fait que les méthodes peuvent manquer de signification en dehors du contexte CLR. Il est donc crucial de prendre en compte l'environnement cible lors de la construction d'un arbre d'expression pour assurer une compatibilité et une interprétation significative.

Expressions lambda déclaratives

Les expressions lambda déclaratives permettent plusieurs instructions et fournissent des opérations plus complexes :

Func<int, int> mySquareDelegate = (x) =>
{
    return x * x;
};

Console.WriteLine(mySquareDelegate(4)); // Output: 16

Dans ce code, un délégué est déclaré qui opère sur des entiers et renvoie leur carré. Le corps de la lambda peut englober plusieurs instructions dans un bloc {}.

Techniques Avancées

Capturer des Variables

Les expressions lambda peuvent capturer des variables de l'environnement englobant. Cette fonctionnalité, connue sous le nom de capture de variable ou fermeture, permet aux expressions lambda d'accéder et d'utiliser des variables déclarées en dehors de leur corps :

int factor = 2;
Func<int, int> multiplier = x => x * factor;

Dans cet exemple, l'expression lambda x => x * factor capture la variable factor de l'étendue environnante.

Paramètres et Instructions Multiples

Les expressions lambda peuvent avoir plus d'un paramètre et exécuter plusieurs instructions encloses dans un bloc :

Func<int, int, int> add = (a, b) =>
{
    int result = a + b;
    Console.WriteLine($"The sum of {a} and {b} is {result}");
    return result;
};

IronPDF : Une bibliothèque PDF d'Iron Software

Explorez IronPDF comme une bibliothèque de génération et d'analyse de PDF polyvalente et haute performance d'Iron Software qui peut être utilisée pour générer des documents PDF.

IronPDF peut être installé depuis le gestionnaire de packages NuGet avec la commande ci-dessous :

PM > Install-Package IronPdf

Ou installé depuis Visual Studio comme indiqué ci-dessous :

Expressions Lambda C# (Comment cela fonctionne pour les développeurs) : Figure 1 - Installation de IronPDF avec le gestionnaire de packages NuGet

Passons maintenant à la génération de PDF en utilisant une expression lambda :

using IronPdf; // Import the IronPdf library
using System;
using System.Collections.Generic;
using System.Linq;

namespace IronPatterns
{
    class Program
    {
        static void Main()
        {
            Console.WriteLine("-----------Iron Software-------------");
            var renderer = new ChromePdfRenderer(); // Initialize the PDF renderer
            var content = "<h1> Iron Software is Awesome </h1> Made with IronPDF!";
            content += "<h2>Demo C# lambda expressions</h2>";
            content += $"<p>Generating Square of list of numbers x=>x*x</p>";

            List<int> numbers = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
            // Use Select to create a list of squared numbers
            List<int> squares = numbers.Select(x => x * x).ToList();

            content += $"<p>Numbers list: {string.Join(",", numbers)}</p>";
            content += $"<p>Squares: {string.Join(",", squares)}</p>";

            var pdf = renderer.RenderHtmlAsPdf(content); // Render the HTML as a PDF
            pdf.SaveAs("output.pdf"); // Save the PDF document
        }
    }
}

Sortie

Expressions Lambda C# (Comment cela fonctionne pour les développeurs) : Figure 2

Licence d'essai

Le code IronPDF ne peut fonctionner qu'avec une licence d'essai obtenue depuis la page de licence d'essai IronPDF. Fournissez un identifiant Email dans la fenêtre contextuelle pour générer une clé de licence et envoyez cette clé à votre email.

"IronPdf.LicenseKey": "<YourKey>"
JSON

Placez la clé de licence dans le fichier AppSettings.json.

Conclusion

Les expressions lambda C# offrent un moyen concis et expressif de définir des fonctions en ligne, rendant le code plus lisible, maintenable et efficace. Elles trouvent des applications dans divers domaines, y compris les requêtes LINQ, la gestion des événements, la programmation asynchrone et la programmation fonctionnelle.

En maîtrisant les expressions lambda, les développeurs peuvent débloquer de nouvelles dimensions de productivité et d'élégance dans leurs bases de code C#.

Que vous soyez un développeur C# chevronné ou que vous commenciez tout juste votre parcours, comprendre et exploiter la puissance des expressions lambda élèvera sans aucun doute vos compétences en programmation à de nouveaux sommets.

Alors plongez, expérimentez, et embrassez la beauté des expressions lambda dans vos projets C#!

Jacob Mellor, Directeur technique @ Team Iron
Directeur technique

Jacob Mellor est directeur de la technologie chez Iron Software et un ingénieur visionnaire pionnier de la technologie C# PDF. En tant que développeur à l'origine de la base de code centrale d'Iron Software, il a façonné l'architecture des produits de l'entreprise depuis sa création, la transformant aux côtés du PDG Cameron Rimington en une entreprise de plus de 50 personnes au service de la NASA, de Tesla et d'agences gouvernementales mondiales.

...
Lire la suite

Articles connexes

Key in blue circle

Obtenez votre clé d'essai de 30 jours instantanément.

Your trial license will be sent to your email address

Aucune restriction. 100 % débloqué. Pas de carte bancaire.

OR
bullet_checkedAucune carte de crédit ou création de compte requiseAucune restriction. 100 % débloqué. Pas de carte bancaire.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
Réservez votre Démonstration en direct gratuite
Booking Badge

De confiance par des millions d'ingénieurs dans le monde entier

Logos des clients d'Iron Software
Obtenez Votre Consultation sans Engagement
Remplissez le formulaire ci-dessous ou envoyez un email à sales@ironsoftware.com
Vos informations seront toujours gardées confidentielles.
De confiance par des millions d'ingénieurs dans le monde entier
Logos des clients d'Iron Software
Obtenez votre clé d'essai 30 jours gratuitement.
Aucune carte de crédit ou création de compte requise
Bibliothèque C# NuGet pour PDF
Installer avec NuGet

Version : 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. Dans l'explorateur de solutions, faites un clic droit sur Références, Gestion des packages NuGet
  2. Sélectionnez Parcourir et recherchez « IronPDF »
  3. Sélectionnez le package et installez
C# PDF DLL
Télécharger DLL

Version : 2026.9

ou téléchargez l'installateur Windows ici.

  1. Téléchargez et décompressez IronPDF à un emplacement tel que ~/Libs dans votre répertoire de solution
  2. Dans l'explorateur de solutions Visual Studio, faites un clic droit sur Références. Sélectionnez Parcourir, « IronPDF.dll »

Licences à partir de 749 $