using IronPdf;
// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from a HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
// Export to a file or Stream
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external html assets: Images, CSS and JavaScript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
C# Sortierte Liste (Wie es für Entwickler funktioniert)
Veröffentlicht 15. Dezember 2024
Teilen Sie:
Einführung in C# SortedList
Was ist eine SortedList?
Die C# Sorted List-Klasse in C# ist eine Sammlung von Schlüssel-Wert-Paaren, ähnlich einem Wörterbuch, jedoch mit dem zusätzlichen Vorteil der automatischen Sortierung nach Schlüsseln. Es ist Teil des System.Collections.Generic-Namespace und für Szenarien konzipiert, in denen Sie schnellen Zugriff auf sortierte Daten benötigen. SortedList TKey, TValue ist ideal, wenn Sie Daten in einer bestimmten Reihenfolge halten und Elemente effizient über den Schlüssel zugreifen müssen.
Wenn es um die Arbeit mitSortierte Listenneben PDF-Erzeugungsaufgaben integriert sich IronPDF perfekt mit dieser Klasse und gibt Ihnen noch mehr Kontrolle über die PDF-Erzeugung.
Hauptmerkmale und Anwendungsfälle
Schlüssel-Wert-Paar Speicher: Wie ein Wörterbuch speichert SortedList Daten als Schlüssel-Wert-Paare.
Automatische Sortierung: SortedList hält zugeordnete Werte standardmäßig in aufsteigender Reihenfolge nach Schlüssel sortiert.
Effiziente Datenabfrage: Die schnelle Abfrage zugehöriger Werte nach Schlüssel macht es geeignet für Nachschlagen.
Anwendungsfälle: SortedList ist nützlich für Anwendungen, die sortierte Daten benötigen, wie z.B. das Verwalten geordneter Listen von Namen, Daten oder Zahlenwerten.
Wie SortedList Funktioniert
Datenstrukturübersicht
Die öffentliche Klasse SortedList ist ein Hybrid zwischen einem Array und einer Hashtabelle und organisiert ihre Elemente nach Schlüssel. Intern verwendet es ein sortiertes Array, um Schlüsselwerte in Ordnung zu halten, was bedeutet, dass zwar Abfragen nach Schlüsseln effizient sind, Einfüge- und Löschoperationen jedoch langsamer sein können als in einem Dictionary.
Sortiermechanismus
Standardmäßig sortiert SortedList<TKey, TValue> Schlüssel in aufsteigender Reihenfolge unter Verwendung der IComparable-Schnittstelle, die sicherstellt, dass Zeichenfolgenschlüssel und andere Typen ein standardmäßiges Vergleichsverhalten implementieren. Wenn eine benutzerdefinierte Sortierreihenfolge benötigt wird, kann ein benutzerdefinierter Vergleicher bereitgestellt werden.
Vorteile und Beschränkungen
Vorteile:
Schneller Schlüsselzugriff: Bietet schnellen O(log n)Zugriff nach Schlüssel.
Sortierte Reihenfolge: Daten werden automatisch nach Schlüsseln sortiert, daher ist keine zusätzliche Sortierung erforderlich.
Nachteile:
Einfügegeschwindigkeit: Langsamer als Dictionary bei Einfügungen, insbesondere bei großen Datenmengen.
Begrenzte Effizienz für nicht-schlüsselbasierte Operationen: Begrenzt in Fällen, in denen auf Daten nicht hauptsächlich durch spezifische Schlüsselwerte zugegriffen wird.
Arbeiten mit C# SortedList
Erstellen einer SortedList
Um eine SortedList in C# zu erstellen, können Sie entweder den Standardkonstruktor verwenden oder einen IComparer übergeben, wenn Sie eine benutzerdefinierte Sortierung benötigen. Die SortedList hat eine standardmäßige Anfangskapazität von 16, aber wenn Sie die ungefähre Größe im Voraus kennen, kann diese spezifiziert werden, um die Leistung zu verbessern.
SortedList<int, string> sortedList = new SortedList<int, string>();
SortedList<int, string> sortedList = new SortedList<int, string>();
Dim sortedList As New SortedList(Of Integer, String)()
Elemente hinzufügen
Sie können Schlüssel-Wert-Paare zur SortedList mit der Add-Methode hinzufügen, die die Elemente nach Schlüssel sortiert hält. Im folgenden Codebeispiel wird die SortedList nach den angegebenen Schlüsseln sortiert und hält die Daten automatisch in aufsteigender Reihenfolge.
Greifen Sie auf Elemente in einer SortedList zu, indem Sie ihre Schlüssel verwenden. Sie können jeden angegebenen Wert, der mit Schlüsseln verknüpft ist, direkt abrufen oder ändern.
// Accessing a specific value by key
string value = sortedList[1]; // "Apple"
// Modifying a value
sortedList[1] = "Avocado";
// Accessing a specific value by key
string value = sortedList[1]; // "Apple"
// Modifying a value
sortedList[1] = "Avocado";
' Accessing a specific value by key
Dim value As String = sortedList(1) ' "Apple"
' Modifying a value
sortedList(1) = "Avocado"
Elemente entfernen
Sie können Elemente mit angegebenen Schlüsseln mithilfe der Remove-Methode entfernen oder sie mithilfe des angegebenen Indexes mit RemoveAt entfernen. Beide Optionen ermöglichen die kontrollierte Löschung von angegebenen Objektdaten in der SortedList.
sortedList.Remove(3); // Removes key 3
sortedList.RemoveAt(0); // Removes item at a zero-based index 0
sortedList.Remove(3); // Removes key 3
sortedList.RemoveAt(0); // Removes item at a zero-based index 0
sortedList.Remove(3) ' Removes key 3
sortedList.RemoveAt(0) ' Removes item at a zero-based index 0
Iterieren über eine SortedList
Sie können über eine SortedList mit einer foreach-Schleife iterieren, die sowohl Schlüssel als auch Werte in sortierter Reihenfolge abruft.
For Each kvp As KeyValuePair(Of Integer, String) In sortedList
Console.WriteLine($"Key: {kvp.Key}, Value: {kvp.Value}")
Next kvp
Praktische Beispiele für die Verwendung von SortedList
Beispiel 1: Speichern und Abrufen von Daten im einfachen Schlüssel-Wert-Format, bei dem die Reihenfolge wichtig ist, wie beispielsweise die Namen von Studenten anhand ihrer Matrikelnummern.
Beispiel 2: Verwendung von SortedList in komplexeren Szenarien, wie dem Anzeigen von sortierten Transaktionsprotokollen oder Ranglisten.
Best Practices:
Verwenden Sie SortedList, wenn Schlüssel der primäre Zugriffspunkt sind und sortiert bleiben müssen.
Für häufige Einfügungen sollten Sie alternative Datenstrukturen wie SortedDictionary in Betracht ziehen, um eine bessere Leistung zu erzielen.
Überlegungen zur Leistung
Vergleich von SortedList mit Dictionary und List
SortedList vs. Dictionary: SortedList ist aufgrund seines Sortiermechanismus langsamer bei Einfügungen als Dictionary.
SortedList vs. List: Anders als eine List ist SortedList für den Zugriff auf Elemente mittels Schlüssel konzipiert und hält die Elemente in sortierter Reihenfolge.
Wann sollte SortedList verwendet werden: Verwenden Sie es, wenn Sie sortierte Daten benötigen und hauptsächlich über den Schlüssel darauf zugreifen, insbesondere in leseintensiven Szenarien.
Integration mit IronPDF für den PDF-Export
Einführung in IronPDF
IronPDFist eine leistungsstarke Bibliothek zur Erstellung und Bearbeitung von PDF-Dateien in C#. Es ermöglicht Entwicklern, PDFs aus verschiedenen Quellen zu erstellen, Inhalte programmgesteuert hinzuzufügen und PDF-Layouts anzupassen. In diesem Abschnitt verwenden wir IronPDF, um einen PDF-Bericht aus SortedList-Daten zu erstellen.
Erstellen von PDF-Berichten aus SortedList-Daten
Um mit der Verwendung von IronPDF zu beginnen, installieren Sie das IronPDF NuGet-Paket:
Install-Package IronPdf
Install-Package IronPdf
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package IronPdf
Beispiel: Export von Daten aus einer SortedList in ein PDF-Dokument
Das folgende Beispiel zeigt, wie Daten aus einer SortedList in eine PDF-Tabelle exportiert werden.
Dim sortedList As New SortedList(Of Integer, String) From {
{1, "Apple"},
{2, "Banana"},
{3, "Cherry"}
}
Als nächstes verwenden Sie IronPDF, um aus diesen Daten ein PDF zu erstellen:
ChromePdfRenderer renderer = new ChromePdfRenderer();
string html = "<h1>Sorted List Data</h1><table border='1'><tr><th>Key</th><th>Value</th></tr>";
foreach (var kvp in sortedList)
{
html += $"<tr><td>{kvp.Key}</td><td>{kvp.Value}</td></tr>";
}
html += "</table>";
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("sortedList.pdf");
ChromePdfRenderer renderer = new ChromePdfRenderer();
string html = "<h1>Sorted List Data</h1><table border='1'><tr><th>Key</th><th>Value</th></tr>";
foreach (var kvp in sortedList)
{
html += $"<tr><td>{kvp.Key}</td><td>{kvp.Value}</td></tr>";
}
html += "</table>";
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("sortedList.pdf");
Dim renderer As New ChromePdfRenderer()
Dim html As String = "<h1>Sorted List Data</h1><table border='1'><tr><th>Key</th><th>Value</th></tr>"
For Each kvp In sortedList
html &= $"<tr><td>{kvp.Key}</td><td>{kvp.Value}</td></tr>"
Next kvp
html &= "</table>"
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(html)
pdf.SaveAs("sortedList.pdf")
Dieser Code erstellt eine HTML-Tabelle aus den SortedList-Daten und konvertiert sie mithilfe von IronPDF in ein PDF.
Erweiterte Funktionen
Anpassen des PDF-Layouts: IronPDF ermöglicht CSS-Styling für Layouts, Schriftarten, Farben usw.
Kopf- und Fußzeilen: IronPDF unterstützt Kopf- und Fußzeilen, die Seitennummern oder Logos enthalten können.
Zusammenfassung und bewährte Verfahren
Übersicht über SortedList: SortedList ist eine sortierte Schlüssel-Wert-Sammlung und eignet sich am besten für Szenarien, in denen auf Daten über einen bestimmten Schlüssel zugegriffen wird und diese sortiert bleiben müssen.
Verwendung von IronPDF für den Export: IronPDF ist eine praktische Bibliothek zum Exportieren von SortedList-Daten in eine PDF-Datei und unterstützt benutzerdefinierte Layouts und Stilgestaltung.
Schlussfolgerung
In diesem Artikel haben wir die C# SortedList-Klasse untersucht, ein leistungsstarkes Werkzeug zur Verwaltung von sortierten Schlüssel-Wert-Datensammlungen. SortedList ist besonders nützlich in Szenarien, in denen Ordnung und effizienter Zugang über Schlüssel entscheidend sind. Von der Erstellung, dem Hinzufügen und Entfernen von Elementen bis hin zur Integration mit IronPDF für den PDF-Export haben wir praktische Schritte und bewährte Verfahren für die Verwendung von SortedList in realen Anwendungen behandelt.
Zusätzlich haben wir gezeigt, wie IronPDFkann die Aufgabe vereinfachen, bestimmte Werte aus einer SortedList in das PDF-Format zu exportieren, was die einfache Erstellung professioneller, gut organisierter Berichte ermöglicht. Die Vielseitigkeit von IronPDF, einschließlich anpassbarer Kopf- und Fußzeilen sowie CSS-Styling, macht es zu einer ausgezeichneten Wahl für die direkte Generierung von PDFs aus Ihren C#-Anwendungen.
Wenn Sie daran interessiert sind, IronPDF auszuprobieren, bietet es einekostenlos testenmit dem Sie die gesamte Bandbreite seiner Funktionen unverbindlich erkunden können. Mit dieser Testversion können Sie die PDF-Erstellung, Anpassungsoptionen und die Integration in bestehende Projekte testen, um sicherzustellen, dass sie Ihren Anforderungen entspricht. Durch die Kombination von SortedList und IronPDF erhalten Entwickler eine robuste, effiziente Lösung zur Verwaltung und Berichterstattung sortierter Daten in C#-Anwendungen.
Jordi beherrscht vor allem Python, C# und C++. Wenn er seine Fähigkeiten bei Iron Software nicht einsetzt, programmiert er Spiele. Durch seine Mitverantwortung für Produkttests, Produktentwicklung und Forschung trägt Jordi wesentlich zur kontinuierlichen Produktverbesserung bei. Die vielseitigen Erfahrungen, die er sammelt, bieten ihm immer wieder neue Herausforderungen, und er sagt, dass dies einer seiner Lieblingsaspekte bei Iron Software ist. Jordi wuchs in Miami, Florida, auf und studierte Informatik und Statistik an der University of Florida.
< PREVIOUS C# Trim (Wie es für Entwickler funktioniert)
NÄCHSTES > C# Float (Wie es für Entwickler funktioniert)