Test dans un environnement réel
Test en production sans filigrane.
Fonctionne partout où vous en avez besoin.
Enregistrement C# est une fonctionnalité puissante introduite pour faciliter la création de modèles de données immuables et pour améliorer l'expérience de codage en réduisant le code standard. Ce tutoriel vise à simplifier le concept des enregistrements en C# pour les débutants, en vous guidant à travers leur syntaxe, leur utilisation et leurs avantages.
Qu'il s'agisse d'objets de transfert de données, de configurations ou simplement d'un moyen efficace de représenter des données, les enregistrements C# offrent une approche concise et conviviale pour le développeur. Nous discuterons égalementIronPDF plus loin dans l'article.
En C#, un enregistrement est un type de référence qui fournit une syntaxe simplifiée pour définir des modèles de données immuables. Contrairement aux définitions traditionnelles des classes, un enregistrement met l'accent sur l'égalité des valeurs plutôt que sur l'égalité des références. Cela signifie que deux instances d'enregistrement sont considérées comme égales si les valeurs de leurs propriétés sont identiques, et non pas simplement parce qu'elles font référence au même emplacement d'objet dans la mémoire.
Il existe deux principaux types d'enregistrements en C# :
La déclaration d'un enregistrement est simple. Vous pouvez définir un enregistrement en utilisant le mot-clé enregistrement suivi du type(classe ou structure) et le nom de l'enregistrement. Par exemple, un simple enregistrement de personne peut être déclaré comme suit :
public record class Person(string FirstName, string LastName);
public record class Person(string FirstName, string LastName);
'INSTANT VB TODO TASK: C# 'records' are not converted by Instant VB:
'public record class Person(string FirstName, string LastName)
Cette déclaration inclut des paramètres positionnels pour FirstName et LastName, qui, sous le capot, génèrent des propriétés publiques et un constructeur primaire pour ces propriétés.
Les enregistrements sont conçus pour être immuables, ce qui signifie qu'une fois qu'une instance d'enregistrement est créée, les valeurs de ses propriétés ne peuvent pas être modifiées. Cette immutabilité est cruciale pour créer des applications prévisibles et sûres, en particulier lorsqu'il s'agit d'opérations simultanées.
Une structure d'enregistrement immuable est déclarée de la même manière qu'une classe d'enregistrement, mais en utilisant la syntaxe structure d'enregistrement. Il combine l'immuabilité et la comparaison basée sur la valeur des enregistrements avec les avantages de performance d'un type de valeur :
public readonly record struct ImmutablePerson(string FirstName, string LastName);
public readonly record struct ImmutablePerson(string FirstName, string LastName);
'INSTANT VB TODO TASK: C# 'records' are not converted by Instant VB:
'public readonly record struct ImmutablePerson(string FirstName, string LastName)
Les enregistrements simplifient la création et l'utilisation de types centrés sur les données. Ils prennent en charge l'héritage, permettent une mutation non destructive et fournissent un formatage intégré pour faciliter le débogage. Explorons ces fonctionnalités à l'aide d'exemples.
Prenons l'exemple suivant, dans lequel nous créons deux instances d'un enregistrement de personne :
var person1 = new Person("Iron", "Software");
var person2 = new Person("Iron", "Software");
Console.WriteLine(person1 == person2); // Output: True
var person1 = new Person("Iron", "Software");
var person2 = new Person("Iron", "Software");
Console.WriteLine(person1 == person2); // Output: True
Dim person1 = New Person("Iron", "Software")
Dim person2 = New Person("Iron", "Software")
Console.WriteLine(person1 = person2) ' Output: True
Bien que personne1 et personne2 soient deux instances distinctes, elles sont considérées comme égales sur la base de leurs valeurs de propriété, ce qui illustre l'égalité fondée sur les valeurs. Il s'agit d'une différence importante par rapport au comportement par défaut des types de référence, qui se concentre sur l'égalité des références.
Par conception, les propriétés des enregistrements sont immuables. Cela signifie que vous ne pouvez pas modifier les valeurs des propriétés d'un enregistrement après sa création.
// This will result in a compilation error
// person1.FirstName = "Jane";
// This will result in a compilation error
// person1.FirstName = "Jane";
' This will result in a compilation error
' person1.FirstName = "Jane";
Les enregistrements prennent en charge l'héritage, ce qui permet de créer une hiérarchie de modèles de données. Voici comment vous pouvez étendre un enregistrement de base :
public record Employee(string FirstName, string LastName, string Department) : Person(FirstName, LastName);
public record Employee(string FirstName, string LastName, string Department) : Person(FirstName, LastName);
'INSTANT VB TODO TASK: C# 'records' are not converted by Instant VB:
'public record Employee(string FirstName, string LastName, string Department) : Person(FirstName, LastName)
Cet enregistrement Employee étend Person, en y ajoutant la propriété Department.
Les enregistrements fournissent une méthode intégrée pour créer un nouvel enregistrement à partir d'un enregistrement existant dont certaines propriétés ont été modifiées, connue sous le nom de mutation non destructive.
var updatedPerson = person1 with { FirstName = "Jane" };
var updatedPerson = person1 with { FirstName = "Jane" };
'INSTANT VB TODO TASK: C# 'with expressions' are not converted by Instant VB:
'var updatedPerson = person1 with { FirstName = "Jane" }
Les enregistrements sont dotés d'un formatage intégré pour faciliter le débogage et la journalisation, et fournissent automatiquement une représentation sous forme de chaîne de leurs propriétés.
Console.WriteLine(person1);
Console.WriteLine(person1);
Console.WriteLine(person1)
Présentation d'IronPDF est une bibliothèque PDF pour les développeurs .NET, conçue pour générer, éditer et manipuler des documents PDF au sein d'applications C#. IronPDF prend en charge le renduPDF à partir de contenu HTML, CSS, Images et JavaScript.
Sa capacité principale réside dans la création de documents PDF à partir de contenu web, offrant une approche rationalisée de la conversion de chaînes HTML, d'URL et de formulaires web ASPX en fichiers PDF. IronPDF fonctionne efficacement dans différents types d'applications, notamment les applications de formulaires, les applications serveur et les applications web.
L'installation d'IronPDF est simple et peut être effectuée via le gestionnaire de paquets NuGet dans Visual Studio. Procédez comme suit :
Dans Visual Studio, accédez à l'explorateur de solutions, faites un clic droit sur References et sélectionnez Manage NuGet Packages.
Dans le gestionnaire de paquets NuGet, sélectionnez Parcourir et recherchez "IronPDF".
Recherchez le paquetage IronPDF et cliquez sur Installer.
Vous pouvez également l'installer à l'aide de la console du gestionnaire de paquets avec la commande :
Install-Package IronPdf
Prenons un exemple pratique dans lequel nous utilisons un enregistrement C# pour contenir des données que nous utilisons ensuite pour générer un document PDF avec IronPDF :
public record Person(string FirstName, string LastName);
class Program
{
static void Main(string [] args)
{
var person = new Person("Iron", "Developer");
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf($"<h1>Person Record</h1><p>Name: {person.FirstName} {person.LastName}</p>");
pdf.SaveAs("PersonRecord.pdf");
}
}
public record Person(string FirstName, string LastName);
class Program
{
static void Main(string [] args)
{
var person = new Person("Iron", "Developer");
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf($"<h1>Person Record</h1><p>Name: {person.FirstName} {person.LastName}</p>");
pdf.SaveAs("PersonRecord.pdf");
}
}
'INSTANT VB TODO TASK: C# 'records' are not converted by Instant VB:
'public record Person(string FirstName, string LastName)
Friend Class Program
Shared Sub Main(ByVal args() As String)
Dim person As New Person("Iron", "Developer")
Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf($"<h1>Person Record</h1><p>Name: {person.FirstName} {person.LastName}</p>")
pdf.SaveAs("PersonRecord.pdf")
End Sub
End Class
Cet exemple crée un simple enregistrement Personne et utilise ensuite IronPDF pour générer un document PDF affichant le nom de la personne. Il montre comment les enregistrements C# peuvent s'intégrer de manière transparente à la génération de PDF dans les applications .NET.
IronPDF est un produit commercial offrant diverses licences adaptées à différents besoins, y compris des options individuelles et commerciales. Chaque achat est accompagné d'une licence à vie et d'une garantie de remboursement de 30 jours. Découvrez les options de licence IronPDF avant d'acheter la licence.
Les enregistrements C# représentent une avancée significative dans la simplification de la modélisation des données dans les applications .NET. En comprenant et en exploitant les enregistrements, les développeurs peuvent créer des bases de code plus fiables, plus faciles à maintenir et plus lisibles.
Que vous travailliez sur des applications à grande échelle ou sur de simples structures de données, les fonctionnalités offertes par les enregistrements, de l'immutabilité à l'égalité basée sur la valeur, en font un outil indispensable de votre boîte à outils C#.
IronPDF offre la possibilité de tester ses fonctionnalités à l'aide de l'applicationEssai gratuit d'IronPDF avant de décider d'un achat. Si vous trouvez que le logiciel répond à vos besoins, vous pouvez acheter une licence à partir de $749.
9 produits de l'API .NET pour vos documents de bureau