在實際環境中測試
在生產環境中測試無浮水印。
在任何需要的地方都能運作。
語言整合查詢(LINQ),C# 中的一個強大語言特性,使程式設計師能夠為各種數據來源創建清晰且富有表達力的查詢。 此帖將討論使用IronPDF,這是一個用於處理 PDF 文件的多功能 C# 庫,使用LINQ 的 Distinct函數。 我們將展示這種組合如何使從集合中創建獨特文檔的過程變得更簡單。 在本文中,我們將學習使用 IronPDF 的 C# LINQ distinct 函數。
創建一個新的控制台專案。
匯入 System.Linq
命名空間。
建立一個包含多個項目的清單。
調用方法 Distinct
()` 從清單中。
取得唯一值並在控制台上顯示結果。
開發人員可以使用 C# 的 LINQ 在其程式碼中直接建立清晰且表達力強的查詢來進行數據操作。(語言集成查詢)功能。 LINQ 首次在 .NET Framework 3.5 中引入,提供了一種標準語法,可用於查詢包括資料庫和集合在內的多種資料來源。 LINQ使用像Where和Select這樣的運算子,使篩選和投影等簡單任務更加容易,從而提高代碼的可讀性。 因為它允許延遲執行以實現最佳速度,這個功能對於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)
程序員可以使用 C# 語言和 .NET 庫來創建、編輯和修改 PDF 文件。IronPDF 網站. 該程式提供一系列工具和功能,以支持涉及PDF文件的各種任務,例如從HTML生成PDF、將HTML轉換為PDF、合併或拆分PDF文檔,以及在已有PDF中添加文字、圖片和註釋。 如需更多了解 IronPDF,請參考他們的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
在此範例中,透過對 categories 集合使用 Distinct 方法,取得一系列不同的類別。 這將幫助我們從序列中移除重複元素。 接下來,IronPDF 用於創建具有獨特元素的 PDF 文件。 此方法保證單獨的 PDF 文件僅針對唯一的類別製作。
了解有關使用 HTML 生成 PDF 的 IronPDF 代碼範例的更多資訊,請參閱IronPDF HTML 轉 PDF 範例代碼.
LINQ 的 Distinct 擴充方法結合 IronPDF 提供了一種強大且高效的機制,根據數值創建唯一的 PDF 文件。 此方法簡化了代碼,保證了有效的文件生成,無論您是處理分類、標籤,還是其他需要單獨文件的數據。
您可以透過利用 LINQ 進行資料處理和使用 IronPDF 進行文件製作,開發出可靠且具表現力的解決方案來管理 C# 應用程式的不同方面。 在為您的專案使用這些策略時,請記住您應用程式的特殊需求,並調整實施以達到最大的可靠性和性能。