ライブ環境でテストする
ウォーターマークなしで本番環境でテストしてください。
必要な場所でいつでも動作します。
言語統合クエリ(LINQ)C# の強力な言語機能である は、プログラマーがさまざまなデータソースに対して明確で表現力豊かな検索を作成できるようにします。 この投稿では、以下について説明しますIronPDFPDF ドキュメントを扱うための多機能な C# ライブラリ。LINQのDistinct関数 この組み合わせが、コレクションからユニークな文書を作成するプロセスをどのように容易にするかを示します。 この記事では、IronPDFを使用してC#のLINQのdistinct関数について学びます。
新しいコンソールプロジェクトを作成してください。
System.Linq
名前空間をインポートします。
複数の項目を含むリストを作成します。
メソッド Distinct
を呼び出す()リストから。
一意の値を取得して、結果をコンソールに表示します。
開発者は、C#のLINQを使用して、コード内でデータ操作のための明快で表現力豊かなクエリを直接構築することができます。(言語統合クエリ (Language Integrated Query))機能 .NET Framework 3.5に初めて搭載されたLINQは、データベースやコレクションを含むさまざまなデータソースをクエリするための標準構文を提供します。 LINQは、WhereやSelectなどの演算子を使用することで、フィルタリングや投影のような簡単なタスクを容易にし、コードの可読性を向上させます。 この機能は、最適な速度のために実行を遅らせることができるため、SQLに類似した方法でデータ操作を迅速かつ自然に行うことができるC#開発者にとって重要です。
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 ドキュメント.
IronPDFの主な機能はHTMLからPDFへの変換, レイアウトとスタイルをそのまま維持します。 Webコンテンツから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ドキュメントを作成したい状況を考えてみてください。 これは特にIronPDFを使用してドキュメントを迅速に作成する際に、LINQのDistinctの有用性が際立つ場所です。
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のコード例についてもっと知りたい方はIronPDF HTMLからPDFへのサンプルコード.
IronPDFと組み合わせたLINQのDistinct拡張メソッドは、値に基づいて一意のPDFドキュメントを作成するための堅牢で効率的なメカニズムを提供します。 このメソッドはカテゴリ、タグ、または別々のドキュメントが必要な他のデータを扱う場合でも、コードを効率化し、効果的なドキュメント作成を保証します。
LINQによるデータ処理とIronPDFによるドキュメント生成を活用することで、C#アプリケーションのさまざまな側面を管理するために信頼性が高く表現力豊かなソリューションを開発できます。 これらの戦略をプロジェクトで使用する際には、アプリケーションの特定のニーズを考慮し、最大の信頼性とパフォーマンスを達成するために実装を調整してください。
9つの .NET API製品 オフィス文書用