Test dans un environnement réel
Test en production sans filigrane.
Fonctionne partout où vous en avez besoin.
Requête intégrée à la langue (LINQ)une fonctionnalité puissante du langage C#, permet aux programmeurs de créer des recherches claires et expressives pour une variété de sources de données. Ce billet traite de l'utilisation de IronPDF, une bibliothèque C# flexible pour travailler avec des documents PDF, en utilisant La spécificité de LINQ fonction. Nous montrerons comment cette combinaison peut faciliter le processus de création de documents uniques à partir d'une collection. Dans cet article, nous allons découvrir la fonction distincte LINQ en C# avec IronPDF.
System.Linq
.Distinct()
de la liste.Les développeurs peuvent élaborer des requêtes claires et expressives pour la manipulation des données directement dans leur code grâce à la fonction LINQ de C# (Langue Requête intégrée) caractéristiques. LINQ, qui a été inclus pour la première fois dans le Framework .NET 3.5, offre une syntaxe standard pour l'interrogation d'une série de sources de données, y compris les bases de données et les collections. LINQ facilite les tâches simples telles que le filtrage et la projection en utilisant des opérateurs tels que Where et Select, ce qui améliore la lisibilité du code. Parce qu'elle permet de différer l'exécution pour une vitesse optimale, cette fonctionnalité est cruciale pour les développeurs C# afin de s'assurer que les opérations de manipulation de données sont effectuées rapidement et naturellement d'une manière analogue à SQL.
Les éléments en double peuvent être supprimés d'une collection ou d'une séquence à l'aide de la fonction Distinct de LINQ. En l'absence de comparateur d'égalité personnalisé, il compare les éléments à l'aide de leur comparateur par défaut. Il s'agit donc d'une excellente option dans les situations où vous devez travailler avec une collection unique et supprimer les composants en double. La technique Distinct utilise la comparaison d'égalité par défaut pour évaluer les valeurs. Il renverra false pour la propriété particulière qui est dupliquée, en fonction de quoi il affichera des éléments uniques.
Pour obtenir des éléments distincts, le plus simple est d'utiliser la méthode Distinct directement sur une collection.
var distinctNumbers = numbers.Distinct();
var distinctNumbers = numbers.Distinct();
Dim distinctNumbers = numbers.Distinct()
Vous pouvez définir une comparaison d'égalité personnalisée en utilisant une surcharge de la fonction Distinct. Cette fonction est utile si vous souhaitez comparer des articles selon des normes particulières. Veuillez consulter l'exemple suivant :
var distinctPeople = people.Distinct(new PersonEqualityComparer());
var distinctPeople = people.Distinct(new PersonEqualityComparer());
Dim distinctPeople = people.Distinct(New PersonEqualityComparer())
Il n'est pas nécessaire de fournir une comparaison d'égalité personnalisée lorsque vous utilisez la méthode Distinct avec des types de valeurs.
var distinctIntegers = integers.Distinct();
var distinctIntegers = integers.Distinct();
Dim distinctIntegers = integers.Distinct()
Distinct peut être utilisé avec des types anonymes pour supprimer les doublons sur la base d'attributs particuliers. Veuillez vous référer à l'exemple suivant :
var distinctPeople = people
.Select(p => new { p.FirstName, p.LastName })
.Distinct();
var distinctPeople = people
.Select(p => new { p.FirstName, p.LastName })
.Distinct();
Dim distinctPeople = people.Select(Function(p) New With {
Key p.FirstName,
Key p.LastName
}).Distinct()
Lorsque vous travaillez avec des objets, vous pouvez soit créer votre propre logique de distinction par un certain attribut, soit utiliser la méthode d'extension DistinctBy
des bibliothèques tierces (comme Plus de LINQ).
var distinctPeople = people.DistinctBy(p => p.Id);
var distinctPeople = people.DistinctBy(p => p.Id);
Dim distinctPeople = people.DistinctBy(Function(p) p.Id)
Les programmeurs peuvent créer, éditer et modifier des documents PDF en utilisant le langage C# à l'aide de la bibliothèque .NET IronPDF. Le programme fournit une gamme d'outils et de fonctionnalités permettant d'effectuer diverses tâches impliquant des fichiers PDF, telles que la génération de PDF à partir de HTML, la conversion de HTML en PDF, la fusion ou la division de documents PDF, et l'ajout de texte, d'images et d'annotations à des PDF déjà existants. Pour en savoir plus sur IronPDF, veuillez vous référer à son site web page de documentation.
La principale caractéristique d'IronPDF est la suivante HTML à PDFce qui permet de conserver intactes vos mises en page et vos styles. Vous pouvez générer des PDF à partir de contenus web, ce qui est idéal pour les rapports, les factures et la documentation. Il permet de convertir des fichiers HTML, des URL et des chaînes HTML en fichiers PDF.
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");
}
}
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");
}
}
Imports IronPdf
Friend Class Program
Shared Sub Main(ByVal args() As String)
Dim renderer = New ChromePdfRenderer()
' 1. Convert HTML String to PDF
Dim htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>"
Dim pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent)
pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf")
' 2. Convert HTML File to PDF
Dim htmlFilePath = "path_to_your_html_file.html" ' Specify the path to your HTML file
Dim pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath)
pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf")
' 3. Convert URL to PDF
Dim url = "http://ironpdf.com" ' Specify the URL
Dim pdfFromUrl = renderer.RenderUrlAsPdf(url)
pdfFromUrl.SaveAs("URLToPDF.pdf")
End Sub
End Class
Obtenir la bibliothèque IronPDF ; c'est nécessaire pour le futur patch. Pour ce faire, saisissez le code suivant dans la console du gestionnaire de paquets NuGet :
Install-Package IronPdf
L'utilisation du gestionnaire de paquets NuGet pour rechercher le paquetage "IronPDF" est une option supplémentaire. Nous pouvons choisir et télécharger le paquet nécessaire à partir de cette liste parmi tous les paquets NuGet associés à IronPDF.
Considérons une situation dans laquelle vous disposez d'un ensemble de données et vous souhaitez créer plusieurs documents PDF en fonction des différentes valeurs de cet ensemble. C'est là que l'utilité de LINQ's Distinct brille, en particulier lorsqu'il est utilisé avec IronPDF pour créer des documents rapidement.
using IronPdf;
using System;
using System.Collections.Generic;
using System.Linq;
public class DocumentGenerator
{
public string result {get;set;}
public int id {get;set;}
public static void Main()
{
// Sample data representing categories
List<string> categories = new List<string>
{
"Technology",
"Business",
"Health",
"Technology",
"Science",
"Business",
"Health"
};
// Use LINQ Distinct to filter out duplicate values
// distinct query syntax
var distinctCategories = categories.Distinct();
// Generate a distinct elements PDF document for each category
foreach (var category in distinctCategories)
{
GeneratePdfDocument(category);
}
}
private static void GeneratePdfDocument(string category)
{
// Create a new PDF document using IronPDF
IronPdf.HtmlToPdf renderer = new IronPdf.HtmlToPdf();
PdfDocument pdf = renderer.RenderHtmlAsPdf($"<h1>{category} Report</h1>");
// Save the PDF to a file
string pdfFilePath = $"{category}_Report.pdf";
pdf.SaveAs(pdfFilePath);
// Display a message with the file path
Console.WriteLine($"PDF generated successfully. File saved at: {pdfFilePath}");
}
}
using IronPdf;
using System;
using System.Collections.Generic;
using System.Linq;
public class DocumentGenerator
{
public string result {get;set;}
public int id {get;set;}
public static void Main()
{
// Sample data representing categories
List<string> categories = new List<string>
{
"Technology",
"Business",
"Health",
"Technology",
"Science",
"Business",
"Health"
};
// Use LINQ Distinct to filter out duplicate values
// distinct query syntax
var distinctCategories = categories.Distinct();
// Generate a distinct elements PDF document for each category
foreach (var category in distinctCategories)
{
GeneratePdfDocument(category);
}
}
private static void GeneratePdfDocument(string category)
{
// Create a new PDF document using IronPDF
IronPdf.HtmlToPdf renderer = new IronPdf.HtmlToPdf();
PdfDocument pdf = renderer.RenderHtmlAsPdf($"<h1>{category} Report</h1>");
// Save the PDF to a file
string pdfFilePath = $"{category}_Report.pdf";
pdf.SaveAs(pdfFilePath);
// Display a message with the file path
Console.WriteLine($"PDF generated successfully. File saved at: {pdfFilePath}");
}
}
Imports IronPdf
Imports System
Imports System.Collections.Generic
Imports System.Linq
Public Class DocumentGenerator
Public Property result() As String
Public Property id() As Integer
Public Shared Sub Main()
' Sample data representing categories
Dim categories As New List(Of String) From {"Technology", "Business", "Health", "Technology", "Science", "Business", "Health"}
' Use LINQ Distinct to filter out duplicate values
' distinct query syntax
Dim distinctCategories = categories.Distinct()
' Generate a distinct elements PDF document for each category
For Each category In distinctCategories
GeneratePdfDocument(category)
Next category
End Sub
Private Shared Sub GeneratePdfDocument(ByVal category As String)
' Create a new PDF document using IronPDF
Dim renderer As New IronPdf.HtmlToPdf()
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf($"<h1>{category} Report</h1>")
' Save the PDF to a file
Dim pdfFilePath As String = $"{category}_Report.pdf"
pdf.SaveAs(pdfFilePath)
' Display a message with the file path
Console.WriteLine($"PDF generated successfully. File saved at: {pdfFilePath}")
End Sub
End Class
Dans cet exemple, une série de catégories distinctes est obtenue en utilisant la méthode Distinct pour la collection de catégories. Il nous aidera à supprimer les éléments dupliqués d'une séquence. Ensuite, IronPDF est utilisé pour créer un document PDF avec des éléments uniques. Cette méthode garantit que des documents PDF distincts sont produits uniquement pour des catégories uniques.
Pour en savoir plus sur l'exemple de code IronPDF permettant de générer des PDF à l'aide de HTML, reportez-vous à la page suivante ici.
La méthode d'extension Distinct de LINQ associée à IronPDF offre un mécanisme robuste et efficace pour créer des documents PDF uniques basés sur des valeurs. Cette méthode rationalise le code et garantit une production efficace de documents, que vous travailliez avec des catégories, des étiquettes ou toute autre donnée nécessitant des documents distincts.
Vous pouvez développer une solution fiable et expressive pour gérer les différents aspects de vos applications C# en utilisant LINQ pour le traitement des données et IronPDF pour la production de documents. Lorsque vous utilisez ces stratégies pour vos projets, gardez à l'esprit les besoins particuliers de votre application et ajustez la mise en œuvre pour obtenir une fiabilité et des performances maximales.
9 produits de l'API .NET pour vos documents de bureau