Test dans un environnement réel
Test en production sans filigrane.
Fonctionne partout où vous en avez besoin.
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.
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
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.
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
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.
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.
Installer IronPDF : Tout d'abord, vous devrez installer IronPDF pour commencer à l'utiliser dans vos projets.
Créez des modèles HTML pour votre rapport et votre facture. Cela permet à IronPDF de rendre ces modèles en PDF.
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.
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.
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
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.
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
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.
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
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
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.
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
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.
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 :
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.
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!
9 produits de l'API .NET pour vos documents de bureau