AIDE .NET

C# Select Case (Comment cela fonctionne pour les développeurs)

Publié décembre 15, 2024
Partager:

Dans les applications modernes .NET, la génération dynamique de PDFs est une exigence courante. Que vous créiez des rapports, des factures ou d'autres documents, disposer d'un moyen simplifié pour générer conditionnellement différents formats PDF est essentiel. Lesinstruction switch (également connu sous le nom de Select Case dans certaines langues)en C# est un outil puissant pour implémenter une telle logique efficacement. L'instruction switch case prendra une forme de type de données.(char, int, string, etc.), et comparez-le aux valeurs de cas pour voir si l'une d'elles correspond. Si elles le font, le code à l'intérieur de ce bloc de cas s'exécutera, sinon le cas par défaut s'exécutera si les autres modèles de cas ne correspondent pas.

IronPDFest une bibliothèque robuste de génération et de manipulation de PDF pour les développeurs .NET, vous permettant de convertir des HTML, des images et divers autres contenus en PDF. En utilisant l'instruction switch de C#, vous pouvez personnaliser vos PDFs en fonction de différentes conditions telles que la saisie utilisateur ou l'état des données.

Cet article vous guidera sur l'utilisation de l'instruction C# Switch case avec IronPDF pour créer un contenu PDF dynamique et conditionnel avec un bon niveau de flux de contrôle au sein du programme, ce qui augmentera finalement l'efficacité et la lisibilité de vos programmes.

Qu'est-ce que Select Case (Interrupteur) en C# ?

Aperçu de C# Select Case

En C#, l'instruction switch(à ne pas confondre avec l'expression switch)fournit une méthode propre et structurée pour gérer la logique conditionnelle en fonction de la valeur d'une variable. Au lieu d'utiliser plusieurs instructions, comme les instructions if-else, les instructions switch case permettent d'avoir un code plus lisible et plus facile à maintenir. L'instruction switch va rechercher une correspondance de modèle pour l'expression de correspondance passée à l'instruction, avant d'exécuter le code dans le cas par défaut si aucune correspondance n'est trouvée.

Voici la structure de base d'une instruction switch en C# :

switch (variable)
{
    case value1:
        // action for value1
        break;
    case value2:
        // action for value2
        break;
    default:
        // default action if no case matches
        break;
}
switch (variable)
{
    case value1:
        // action for value1
        break;
    case value2:
        // action for value2
        break;
    default:
        // default action if no case matches
        break;
}
Select Case variable
	Case value1
		' action for value1
	Case value2
		' action for value2
	Case Else
		' default action if no case matches
End Select
VB   C#

Chaque cas représente une valeur possible pour la variable et lorsqu'une correspondance est trouvée, le code à l'intérieur de ce bloc est exécuté. Ceci est particulièrement utile lorsque vous avez plusieurs résultats basés sur une seule variable, comme déterminer quel type de document générer dans un PDF.

Intégration de Select Case avec IronPDF pour la génération dynamique de PDF

Utilisation de Select Case pour la personnalisation du contenu PDF

Imaginez que vous développez un système où différents types de documents doivent être générés en fonction des saisies des utilisateurs. Par exemple, vous pourriez avoir besoin de créer un rapport pour un utilisateur et une facture pour un autre. Avec l'instruction switch de C#, vous pouvez facilement déterminer quel type de PDF générer avec IronPDF.

Voici un scénario d'exemple : En fonction de la sélection d'un utilisateur, vous pouvez utiliser une instruction switch pour décider quel contenu HTML rendre dans un document PDF, en faisant correspondre le choix de l'utilisateur à la même valeur de cas.

switch (userChoice)
{
    case "report":
        // Code to generate a report PDF using IronPDF
        break;
    case "invoice":
        // Code to generate an invoice PDF using IronPDF
        break;
    default:
        // Code to generate a default PDF document using IronPDF
        break;
}
switch (userChoice)
{
    case "report":
        // Code to generate a report PDF using IronPDF
        break;
    case "invoice":
        // Code to generate an invoice PDF using IronPDF
        break;
    default:
        // Code to generate a default PDF document using IronPDF
        break;
}
Select Case userChoice
	Case "report"
		' Code to generate a report PDF using IronPDF
	Case "invoice"
		' Code to generate an invoice PDF using IronPDF
	Case Else
		' Code to generate a default PDF document using IronPDF
End Select
VB   C#

Dans cet exemple, le système peut générer plusieurs types de documents en réutilisant les puissantes capacités de rendu PDF d’IronPDF, tout en simplifiant la prise de décision à l'aide de l'instruction switch.

Mise en œuvre étape par étape

Explorons comment intégrer le switch de C# avec IronPDF pour générer des PDF. Pour cet exemple, nous traiterons deux types de documents : Rapports et Factures.

  1. Installer IronPDF : Tout d'abord, vous devrez installer IronPDF pour commencer à l'utiliser dans vos projets.

    1. Configurer le contenu HTML pour différents types de documents :

    Créez des modèles HTML pour votre rapport et votre facture. Cela permet à IronPDF de rendre ces modèles en PDF.

    1. Utilisez l'instruction switch pour une sélection dynamique :

    Basé sur l'entrée utilisateur(ou toute autre variable)utilisez l'instruction switch pour déterminer quel modèle HTML utiliser et transmettez-le à IronPDF pour le rendu PDF.

Installation d'IronPDF

Pour commencer à utiliserIronPDF, vous devrez d'abord l'installer. S'il est déjà installé, vous pouvez passer à la section suivante, sinon, les étapes suivantes expliquent comment installer la bibliothèque IronPDF.

Via la console du gestionnaire de packages NuGet

Pourinstaller IronPDFen utilisant la console du gestionnaire de packages NuGet, ouvrez Visual Studio et accédez à la console du gestionnaire de packages. Ensuite, exécutez la commande suivante :

Install-Package IronPdf
Install-Package IronPdf
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package IronPdf
VB   C#

Via le gestionnaire de packages NuGet pour la solution

Ouvrez Visual Studio, allez dans "outils -> Gestionnaire de packages NuGet -> Gérer les packages NuGet pour la solution" et recherchez IronPDF. À partir de là, il vous suffit de sélectionner votre projet et de cliquer sur "Installer" et IronPDF sera ajouté à votre projet.

Sélectionner le cas en C#(Comment cela fonctionne pour les développeurs) : Figure 1

Une fois que vous avez installé IronPDF, il vous suffit d'ajouter l'instruction using correcte en tête de votre code pour commencer à utiliser IronPDF :

using IronPdf;
using IronPdf;
Imports IronPdf
VB   C#

Exemple : Générer des PDFs avec différents styles en utilisant IronPDF

Étude de cas : Génération de rapports vs. factures

Examinons de plus près un cas d'utilisation concret. Supposons que vous développiez un système pour une entreprise qui doit générer à la fois des rapports et des factures pour ses clients. En fonction de ce que l'utilisateur sélectionne, vous pouvez rendre différents contenus en PDF.

  1. Génération de rapports :

    Lorsque l'utilisateur sélectionne "Rapport", le système génère un PDF avec du contenu spécifique au rapport. En utilisant des modèles HTML, vous pouvez facilement personnaliser la structure du contenu.

case "Report":
        string reportHtml = "<h1>Monthly Report</h1><p>This report provides a detailed overview of activities.</p>";
        PdfDocument reportPdf = pdfRenderer.RenderHtmlAsPdf(reportHtml);
        reportPdf.SaveAs("Monthly_Report.pdf");
        break;
case "Report":
        string reportHtml = "<h1>Monthly Report</h1><p>This report provides a detailed overview of activities.</p>";
        PdfDocument reportPdf = pdfRenderer.RenderHtmlAsPdf(reportHtml);
        reportPdf.SaveAs("Monthly_Report.pdf");
        break;
Case "Report"
		Dim reportHtml As String = "<h1>Monthly Report</h1><p>This report provides a detailed overview of activities.</p>"
		Dim reportPdf As PdfDocument = pdfRenderer.RenderHtmlAsPdf(reportHtml)
		reportPdf.SaveAs("Monthly_Report.pdf")
		break
VB   C#
  1. Génération de Factures :

    Pour les factures, vous pouvez inclure des informations de facturation et des listes détaillées dans le HTML, qu'IronPDF convertira en un PDF de haute qualité.

case "Invoice":
        string invoiceHtml = "<h1>Invoice #12345</h1><p>Billing details and itemized list here.</p>";
        PdfDocument invoicePdf = pdfRenderer.RenderHtmlAsPdf(invoiceHtml);
        invoicePdf.SaveAs("Invoice_12345.pdf");
        break;
case "Invoice":
        string invoiceHtml = "<h1>Invoice #12345</h1><p>Billing details and itemized list here.</p>";
        PdfDocument invoicePdf = pdfRenderer.RenderHtmlAsPdf(invoiceHtml);
        invoicePdf.SaveAs("Invoice_12345.pdf");
        break;
Case "Invoice"
		Dim invoiceHtml As String = "<h1>Invoice #12345</h1><p>Billing details and itemized list here.</p>"
		Dim invoicePdf As PdfDocument = pdfRenderer.RenderHtmlAsPdf(invoiceHtml)
		invoicePdf.SaveAs("Invoice_12345.pdf")
		break
VB   C#

Cette approche garantit que vous maintenez la flexibilité et la réutilisabilité de votre base de code, car vous pouvez facilement étendre l'instruction switch pour traiter des types de documents supplémentaires.

Exemple de code : Créer des rapports et des factures en utilisant IronPDF et des instructions switch

Dans l'exemple de code suivant, nous allons prendre une entrée utilisateur pour la transmettre à l'instruction Switch afin de déterminer quel PDF sera généré.

using IronPdf;
using System;
public class Program
{
    public static void Main(string[] args)
    {
        Console.WriteLine("What do you want to create?");
        Console.WriteLine("a. Report");
        Console.WriteLine("b. Invoice");
        var input = Console.ReadLine();
        string docType;
        if (input == "a")
        {
            GeneratePdf("Report");
        }
        else if (input == "b")
        {
            GeneratePdf("Invoice");
        }
        else
        {
            GeneratePdf(null);
        }
    }
    public static void GeneratePdf(string docType)
    {
        ChromePdfRenderer renderer = new ChromePdfRenderer();
        switch (docType)
        {
            case "Report":
                string reportHtml = "<h1>Report</h1><p>This is a dynamically generated report.</p>";
                PdfDocument reportPdf = renderer.RenderHtmlAsPdf(reportHtml);
                reportPdf.SaveAs("Report.pdf");
                break;
            case "Invoice":
                string invoiceHtml = "<h1>Invoice</h1><p>This is a dynamically generated invoice.</p>";
                PdfDocument invoicePdf = renderer.RenderHtmlAsPdf(invoiceHtml);
                invoicePdf.SaveAs("Invoice.pdf");
                break;
            default:
                string defaultHtml = "<h1>Document</h1><p>This is a default PDF document.</p>";
                PdfDocument defaultPdf = renderer.RenderHtmlAsPdf(defaultHtml);
                defaultPdf.SaveAs("Default.pdf");
                break;
        }
    }
}
using IronPdf;
using System;
public class Program
{
    public static void Main(string[] args)
    {
        Console.WriteLine("What do you want to create?");
        Console.WriteLine("a. Report");
        Console.WriteLine("b. Invoice");
        var input = Console.ReadLine();
        string docType;
        if (input == "a")
        {
            GeneratePdf("Report");
        }
        else if (input == "b")
        {
            GeneratePdf("Invoice");
        }
        else
        {
            GeneratePdf(null);
        }
    }
    public static void GeneratePdf(string docType)
    {
        ChromePdfRenderer renderer = new ChromePdfRenderer();
        switch (docType)
        {
            case "Report":
                string reportHtml = "<h1>Report</h1><p>This is a dynamically generated report.</p>";
                PdfDocument reportPdf = renderer.RenderHtmlAsPdf(reportHtml);
                reportPdf.SaveAs("Report.pdf");
                break;
            case "Invoice":
                string invoiceHtml = "<h1>Invoice</h1><p>This is a dynamically generated invoice.</p>";
                PdfDocument invoicePdf = renderer.RenderHtmlAsPdf(invoiceHtml);
                invoicePdf.SaveAs("Invoice.pdf");
                break;
            default:
                string defaultHtml = "<h1>Document</h1><p>This is a default PDF document.</p>";
                PdfDocument defaultPdf = renderer.RenderHtmlAsPdf(defaultHtml);
                defaultPdf.SaveAs("Default.pdf");
                break;
        }
    }
}
Imports IronPdf
Imports System
Public Class Program
	Public Shared Sub Main(ByVal args() As String)
		Console.WriteLine("What do you want to create?")
		Console.WriteLine("a. Report")
		Console.WriteLine("b. Invoice")
		Dim input = Console.ReadLine()
		Dim docType As String
		If input = "a" Then
			GeneratePdf("Report")
		ElseIf input = "b" Then
			GeneratePdf("Invoice")
		Else
			GeneratePdf(Nothing)
		End If
	End Sub
	Public Shared Sub GeneratePdf(ByVal docType As String)
		Dim renderer As New ChromePdfRenderer()
		Select Case docType
			Case "Report"
				Dim reportHtml As String = "<h1>Report</h1><p>This is a dynamically generated report.</p>"
				Dim reportPdf As PdfDocument = renderer.RenderHtmlAsPdf(reportHtml)
				reportPdf.SaveAs("Report.pdf")
			Case "Invoice"
				Dim invoiceHtml As String = "<h1>Invoice</h1><p>This is a dynamically generated invoice.</p>"
				Dim invoicePdf As PdfDocument = renderer.RenderHtmlAsPdf(invoiceHtml)
				invoicePdf.SaveAs("Invoice.pdf")
			Case Else
				Dim defaultHtml As String = "<h1>Document</h1><p>This is a default PDF document.</p>"
				Dim defaultPdf As PdfDocument = renderer.RenderHtmlAsPdf(defaultHtml)
				defaultPdf.SaveAs("Default.pdf")
		End Select
	End Sub
End Class
VB   C#

Sélectionner une instruction Case en C# (Comment cela fonctionne pour les développeurs) : Figure 2

Dans cet exemple, l'instruction switch contrôle le type de document généré. Si le docType est "Report", un PDF de rapport sera créé. S'il s'agit d'une « facture », une facture sera générée. Si aucune correspondance n'est trouvée, un PDF par défaut est créé à la place.

Pourquoi choisir IronPDF pour vos projets .NET ?

IronPDF se distingue par sa capacité à rendre le contenu HTML, CSS, JavaScript et même le contenu dynamique C# directement en PDF. En l'intégrant avec l'instruction switch de C#, vous pouvez rationaliser votre processus de génération de documents, le rendant plus efficace et plus facile à maintenir.

Voici quelques avantages clés d'IronPDF :

  • Intégration simple : Convertissez facilementHTML, images, et plus encore en PDF avec une configuration minimale.
  • Ensemble complet de fonctionnalités : IronPDF prend en charge des fonctionnalités telles que les en-têtes, les pieds de page, les filigranes, et plus encore.
  • Support multiplateforme : Fonctionne dans les environnements .NET Core, .NET Framework et Azure.

    Pour en savoir plus sur l'ensemble robuste de fonctionnalités qu'IronPDF a à offrir, assurez-vous de consulter son pratiquecomment-fairedisponible, vous pouvez explorer toutes ses fonctionnalités sans risque avant de vous engager.

Conclusion

En tirant parti de l'instruction switch case en C# et IronPDF, vous pouvez créer des documents PDF dynamiques et personnalisables avec un minimum d'effort. Que vous ayez besoin de générer des rapports, des factures ou d'autres types de documents, cette combinaison offre flexibilité et efficacité. L'utilisation d'instructions telles qu'une instruction if fonctionne très bien si vous traitez seulement un ou deux résultats potentiels, mais les instructions switch peuvent grandement améliorer la clarté de votre code lorsque vous travaillez avec plusieurs résultats.

Utiliser le bloc switch pour générer différents types de PDF est une excellente façon d'exploiter IronPDF à un tout nouveau niveau. Avec un ensemble riche de fonctionnalités, une excellente performance et une compatibilité multiplateforme, IronPDF est un puissant outil de génération de PDF à avoir à portée de main. Ne vous contentez pas de nous croire sur parole—téléchargez leessai gratuitaujourd'hui et découvrez par vous-même comment il peut rationaliser vos flux de travail PDF!

< PRÉCÉDENT
C# Float (Comment cela fonctionne pour les développeurs)
SUIVANT >
C# CancellationToken (Comment Ça Fonctionne Pour Les Développeurs)