在实际环境中测试
在生产中测试无水印。
随时随地为您服务。
语言集成查询 (LINQ)是 C# 中一项强大的语言功能,它使程序员能够为各种数据源创建清晰、富有表现力的搜索。本篇文章将讨论如何使用 IronPDF是一个灵活的 C# 库,用于处理 PDF 文档,使用 LINQ 的独特之处 功能。我们将展示这种组合如何使从集合中创建唯一论文的过程变得更容易。在本文中,我们将通过 IronPDF 学习 C# LINQ distinct 函数。
1.创建一个新的控制台项目。
2.导入 System.Linq
命名空间。
3.创建一个包含多个项目的列表。
4.调用方法 `Distinct()从名单中选出。
5.获取唯一值并将结果显示在控制台上。
6.处理所有创建的对象。
开发人员可以使用 C# 的 LINQ 直接在代码中为数据处理建立清晰而富有表现力的查询 (语言综合查询) 特点LINQ 首次出现在.NET Framework 3.5 中,为查询包括数据库和集合在内的一系列数据源提供了标准语法。通过使用 Where 和 Select 等操作符,LINQ 使过滤和投影等简单任务变得更容易,从而提高了代码的可读性。由于 LINQ 允许延迟执行以获得最佳速度,因此该功能对于 C# 开发人员来说至关重要,可确保以类似于 SQL 的方式快速、自然地完成数据操作。
使用 LINQ 的 Distinct 函数可以从集合或序列中删除重复元素。在没有自定义相等比较器的情况下,它会使用默认比较器对项目进行比较。因此,在需要处理唯一集合并删除重复元素的情况下,它是一个不错的选择。Distinct 技术使用默认相等比较器来评估值。对于重复的特定属性,它将返回 false,并在此基础上显示唯一元素。
要获得不同的项目,最简单的方法是直接在集合上使用 Distinct 方法。
var distinctNumbers = numbers.Distinct();
var distinctNumbers = numbers.Distinct();
Dim distinctNumbers = numbers.Distinct()
您可以使用 Distinct 函数的重载来定义自定义等价比较。如果您希望根据特定标准比较项目,这将很有帮助。请参考以下示例:
var distinctPeople = people.Distinct(new PersonEqualityComparer());
var distinctPeople = people.Distinct(new PersonEqualityComparer());
Dim distinctPeople = people.Distinct(New PersonEqualityComparer())
在值类型中使用 Distinct 方法时,您无需提供自定义的相等比较。
var distinctIntegers = integers.Distinct();
var distinctIntegers = integers.Distinct();
Dim distinctIntegers = integers.Distinct()
Distinct 可与匿名类型一起使用,根据特定属性删除重复内容。请参阅以下示例:
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()
在处理对象时,您可以创建自己的逻辑来根据特定属性进行区分,也可以使用第三方库中的 DistinctBy
扩展方法 (更多 LINQ).
var distinctPeople = people.DistinctBy(p => p.Id);
var distinctPeople = people.DistinctBy(p => p.Id);
Dim distinctPeople = people.DistinctBy(Function(p) p.Id)
程序员可借助 .NET 库使用 C# 语言创建、编辑和更改 PDF 文档 IronPDF.该程序提供了一系列工具和功能,可完成涉及 PDF 文件的各种任务,如从 HTML 生成 PDF、将 HTML 转换为 PDF、合并或拆分 PDF 文档,以及在已有的 PDF 文件中添加文本、图像和注释。要了解有关 IronPDF 的更多信息,请参阅他们的 文档页面.
IronPDF 的主要功能是 HTML 转 PDF这样就能保持布局和样式的完整性。你可以从网页内容生成 PDF,非常适合报告、发票和文档。它支持将 HTML 文件、URL 和 HTML 字符串转换为 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
获取 IronPDF 库;未来的补丁需要它。在 NuGet 软件包管理器控制台中输入以下代码即可完成此操作:
Install-Package IronPdf
使用 NuGet 软件包管理器搜索软件包 "IronPDF "也是一种选择。我们可以从与 IronPDF 相关的所有 NuGet 软件包列表中选择并下载所需的软件包。
考虑这样一种情况:您有一组数据,并希望根据这组数据中的不同值创建各种 PDF 文档。这正是 LINQ 的 Distinct(区分)功能的用武之地,尤其是在与 IronPDF 配合使用以快速创建文档时。
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
在本例中,通过对类别集合使用 Distinct 方法,可以获得一系列不同的类别。它将帮助我们删除序列中的重复元素。接下来,我们使用 IronPDF 创建一个包含唯一元素的 PDF 文档。这种方法可确保只为独特类别生成单独的 PDF 文档。
要进一步了解使用 HTML 生成 PDF 的 IronPDF 代码示例,请参阅 这里.
LINQ 的 Distinct 扩展方法与 IronPDF 结合使用,提供了一种基于值创建唯一 PDF 文档的强大而高效的机制。无论您处理的是类别、标签还是任何其他需要单独文档的数据,该方法都能简化代码并确保有效的文档制作。
通过利用 LINQ 进行数据处理和利用 IronPDF 制作文档,您可以为管理 C# 应用程序的不同方面开发出一种可靠而富有表现力的解决方案。在您的项目中使用这些策略时,请牢记您应用程序的特殊需求,并调整实现方式,以达到最大的可靠性和性能。