IRONSOFTWAREHOME
MISES À JOUR POUR LES DÉVELOPPEURS

Constructeur principal C# (Comment ça fonctionne pour les développeurs)

Jacob Mellor, Directeur technique @ Team Iron
Jacob Mellor
Updated: 4 septembre 2026

Dans le paysage orienté objet de la programmation C#, l'introduction des constructeurs primaires apporte un nouveau niveau d'élégance et de simplicité au langage. Les constructeurs primaires, aux côtés de fonctionnalités telles que les intercepteurs et les expressions de collection, ont émergé dans C# 12 comme une fonctionnalité puissante, offrant une syntaxe plus concise pour déclarer des constructeurs avec des paramètres. Vous pouvez explorer en profondeur les constructeurs primaires sur le guide Microsoft C#.

Dans cet article, nous apprendrons comment utiliser efficacement les constructeurs primaires de C# 12, en explorant également leur fonctionnalité, leurs cas d'utilisation, et comment ils transforment la façon dont les développeurs abordent l'initialisation des classes.

Understanding the Basics: Constructors in C#

Les constructeurs jouent un rôle central dans la programmation orientée objet, servant de modèle pour initialiser des objets. Traditionnellement, les développeurs C# ont utilisé le constructeur par défaut ou des constructeurs avec paramètres pour configurer l'état initial de leurs classes. Cependant, l'introduction des constructeurs primaires ajoute une approche plus rationalisée à cet aspect essentiel du développement C#.

L'essence des constructeurs primaires

Un constructeur primaire en C# est un moyen concis de déclarer et d'initialiser les propriétés directement dans la déclaration de la classe. Il simplifie le processus de définition et d'attribution de valeurs aux propriétés, offrant une syntaxe plus déclarative et lisible.

Avantages des constructeurs primaires

  1. Concision : Les constructeurs primaires offrent une syntaxe succincte, réduisant le code boilerplate et améliorant la lisibilité.
  2. Portée : Contrairement aux constructeurs traditionnels, les paramètres dans les constructeurs primaires sont dans la portée de l'ensemble de la classe ou de la structure, offrant de la flexibilité dans leur utilisation.
  3. Valeurs par défaut : Les valeurs de paramètres par défaut simplifient la création d'objets, la rendant plus pratique pour les développeurs.

Déclarer un constructeur primaire

La syntaxe d'un constructeur primaire implique de déclarer les propriétés directement dans l'en-tête de la classe. Considérons un exemple de classe Person basique :

public class Person(string name, int age)
{
    public string Name { get; } = name;
    public int Age { get; } = age;
    public override string ToString() => $"Name: {Name}, Age: {Age}";
}

Dans l'exemple de code ci-dessus, la classe Person a un constructeur primaire qui initialise les propriétés membres d'instance Name et Age. Les paramètres du constructeur sont déclarés avec le nom de la classe ou de la structure, et lors de la définition des propriétés publiques, les valeurs des paramètres leur sont attribuées.

Exemple 1 : Point immuable dans l'espace 2D

public readonly struct Point(double x, double y)
{
    public double X { get; } = x;
    public double Y { get; } = y;
    public double Magnitude => Math.Sqrt(X * X + Y * Y);
}

Dans cet exemple, le constructeur primaire de la structure Point initialise les propriétés X et Y, illustrant à quel point la syntaxe peut être concise et expressive.

Exemple 2 : Logger configurable avec paramètres par défaut

public class Logger(string filePath = "log.txt", LogLevel level = LogLevel.Info)
{
    private readonly string _filePath = filePath;
    private readonly LogLevel _level = level;

    public void Log(string message)
    {
        // Actual logging implementation using _filePath and _level
    }
}

Ici, le constructeur primaire de la classe Logger fournit des valeurs par défaut pour filePath et level, la rendant flexible et facile à utiliser tout en maintenant la configurabilité.

Exemple 3 : Injection de dépendance

public interface IService
{
    Distance GetDistance();
}

public class ExampleController(IService service) : ControllerBase
{
    public ActionResult<Distance> Get() => service.GetDistance();
}

Les constructeurs primaires conviennent aux scénarios d'injection de dépendance. Dans cet exemple, une classe de contrôleur indique ses dépendances, améliorant la maintenabilité et facilitant les tests unitaires.

Exemple 4 : Construire une hiérarchie de formes géométriques

public abstract class Shape(double width, double height)
{
    public double Width { get; } = width;
    public double Height { get; } = height;
    public abstract double CalculateArea();
}

public class Rectangle(double width, double height) : Shape(width, height)
{
    public override double CalculateArea() => Width * Height;
}

public class Circle : Shape
{
    public Circle(double radius) : base(radius * 2, radius * 2) { }
    public override double CalculateArea() => Math.PI * Math.Pow(Width / 2, 2);
}

Dans cet exemple, le constructeur primaire de la classe Shape forme la base d'une hiérarchie de formes géométriques. Les sous-classes comme Rectangle et Circle tirent parti du constructeur primaire pour une initialisation cohérente. La classe Rectangle elle-même déclare le constructeur primaire et passe les paramètres du constructeur primaire capturés à la classe Shape en tant que paramètres primaires. La classe Circle démontre de la flexibilité en définissant son constructeur dans la classe entière puis en passant ses paramètres comme valeurs par défaut pour le constructeur de Shape en utilisant le mot-clé base.

Présentation d'IronPDF

IronPDF est une bibliothèque C# polyvalente qui permet aux développeurs de créer, manipuler et convertir des fichiers PDF sans effort. Que vous génériez des factures, des rapports ou tout autre document, IronPDF vous permet de convertir sans problème le contenu HTML en PDFs soignés et professionnels directement dans votre application C#.

IronPDF est un outil pratique pour les développeurs qui leur permet de transformer des pages web, des URL, et HTML en PDF. Le meilleur aspect est que les PDFs ressemblent exactement aux pages web originales, avec tout le formatage et le style préservés. Il est parfait pour créer des PDFs à partir de contenu web tel que des rapports et des factures.

using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        var renderer = new ChromePdfRenderer();

        // 1. Convert HTML String to PDF
        var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
        var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
        pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");

        // 2. Convert HTML File to PDF
        var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
        var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
        pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");

        // 3. Convert URL to PDF
        var url = "http://ironpdf.com"; // Specify the URL
        var pdfFromUrl = renderer.RenderUrlAsPdf(url);
        pdfFromUrl.SaveAs("URLToPDF.pdf");
    }
}

Constructeur principal C# (Comment cela fonctionne pour le développeur) : Figure 1 - Page Web IronPDF

Installer IronPDF : Un démarrage rapide

Pour intégrer IronPDF dans votre projet C#, commencez par installer le package NuGet IronPDF. Exécutez la commande suivante dans votre Console du Gestionnaire de Packages :

PM > Install-Package IronPdf

Sinon, trouvez "IronPDF" dans le Gestionnaire de Packages NuGet et procédez à l'installation à partir de là.

Constructeur principal C# (Comment cela fonctionne pour le développeur) : Figure 2 - Recherche du package IronPDF dans le navigateur du gestionnaire de packages NuGet

Générer des PDFs avec IronPDF

Créer un PDF avec IronPDF est un processus rationalisé. Considérez l'exemple suivant :

var htmlContent = "<html><body><h1>Hello, IronPDF!</h1></body></html>";
// Create a new PDF document
var pdfDocument = new IronPdf.ChromePdfRenderer();
pdfDocument.RenderHtmlAsPdf(htmlContent).SaveAs("C:/GeneratedDocument.pdf");

Dans cet exemple, IronPDF est utilisé pour rendre le contenu HTML dans un document PDF, qui est ensuite enregistré à l'emplacement spécifié. Pour plus de détails sur la création et la manipulation de PDFs en C#, veuillez visiter ce lien de tutoriel complet, et pour explorer plus, veuillez visiter cette page de documentation.

Constructeurs principaux C# : Une révolution de l'initialisation de classe

Les constructeurs primaires C# offrent une approche déclarative et rationalisée pour initialiser les propriétés des classes directement dans la déclaration de la classe. Voyons si cette fonctionnalité élégante peut être intégrée en douceur avec IronPDF.

Intégration des constructeurs principaux C# avec IronPDF

Bien que les constructeurs primaires C# soient avant tout une fonctionnalité du langage axée sur l'initialisation de classes, leur intégration directe avec IronPDF peut ne pas être un cas d'utilisation courant. La fonctionnalité principale d'IronPDF réside dans la génération et la manipulation de documents PDF, et les spécificités de l'initialisation de classes peuvent ne pas s'aligner directement avec ce flux de travail.

Cependant, les développeurs peuvent tirer parti des constructeurs primaires C# lors de la définition de classes ou structures personnalisées liées aux configurations ou modèles de données IronPDF. Par exemple, si votre application nécessite une structure de classe spécifique pour gérer les paramètres ou les configurations liées au PDF, les constructeurs primaires C# peuvent être un outil précieux pour initialiser ces classes de manière concise.

public class PdfGenerationSettings(string title, bool includeHeader, bool includeFooter)
{
    public string Title { get; } = title;
    public bool IncludeHeader { get; } = includeHeader;
    public bool IncludeFooter { get; } = includeFooter;
    // Additional properties...
}

// Usage with IronPDF
var pdfSettings = new PdfGenerationSettings("My PDF Title", true, false);
var renderOptions = new ChromePdfRenderOptions
{
    PaperSize = IronPdf.Rendering.PdfPaperSize.A4,
    MarginTop = 20,
    MarginBottom = 20,
    MarginLeft = 10,
    MarginRight = 10,
    Title = pdfSettings.Title
};
// Apply settings from PdfGenerationSettings
if (pdfSettings.IncludeHeader)
{
    renderOptions.TextHeader = new TextHeaderFooter
    {
        CenterText = "Page {page} of {total-pages}",
        DrawDividerLine = true
    };
}
var pdfDocument = new IronPdf.ChromePdfRenderer();
pdfDocument.RenderingOptions = renderOptions;
pdfDocument.RenderHtmlAsPdf("<html><body><h1>Hello, IronPDF!</h1></body></html>").SaveAs("CustomizedDocument.pdf");

Dans cet exemple, la classe PdfGenerationSettings utilise un constructeur primaire C# pour initialiser les propriétés relatives aux paramètres de génération de PDF, qui peuvent ensuite être utilisées pour déterminer quelles options de rendu ajouter et lesquelles ignorer. La sortie contient un texte en-tête et un titre tel qu'il a été défini à l'aide du paramètre du constructeur primaire.

Constructeur principal C# (Comment cela fonctionne pour le développeur) : Figure 3 - PDF produit par l'exemple de code ci-dessus

Conclusion

En conclusion, les constructeurs primaires en C# présentent une approche raffinée et expressive de l'initialisation des classes. Leur syntaxe déclarative renforce la lisibilité du code, promeut l'immutabilité et simplifie le processus de création d'objets avec des valeurs par défaut. Que vous définissiez des propriétés, renforciez l'immutabilité ou embrassiez des valeurs par défaut, les constructeurs primaires permettent aux développeurs de maîtriser l'art de l'initialisation des classes dans le monde dynamique de la programmation C#.

Bien que l'intégration directe des constructeurs primaires C# avec IronPDF ne soit peut-être pas l'objectif principal, ces deux éléments peuvent fonctionner ensemble harmonieusement. Les constructeurs primaires C# améliorent la clarté et la simplicité de l'initialisation des classes, les rendant précieuses pour définir des structures ou configurations liées aux flux de travail IronPDF.

Exploitez la puissance d'IronPDF pour une génération robuste de PDFs, et utilisez les constructeurs primaires C# là où l'élégance de l'initialisation de classe est primordiale. Ce duo dynamique vous permet de naviguer dans les complexités de la génération de documents avec créativité et efficience dans le monde vibrant de la programmation C#.

IronPDF offre une essai gratuit et sa Licence Lite commence à partir de $999.

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 $