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");
In der vernetzten Welt von heute müssen moderne Softwareprogramme in der Lage sein, Daten zuverlässig und effizient über Netzwerke zu senden. Das wichtigste Netzwerkprotokoll des Internets, TCP/IP, bietet einen stabilen Rahmen für die Datenübertragung unter verschiedenen Netzwerkbedingungen. Die Gerätekommunikation wird durch diese Protokolle ermöglicht, die eine Reihe von Anwendungsfällen unterstützen, darunter Dateiübertragung, Fernzugriff und Echtzeitkommunikation.
Im Gegensatz dazu ist IronPDF eine funktionsreiche .NET-Bibliothek zum Erstellen und Bearbeiten von PDF-Dateien. IronPDF ist ein nützliches Werkzeug für die Erstellung von Dokumenten, Berichten und Datenvisualisierung, da es Entwicklern erlaubt, dynamisch PDF-Dateien aus HTML-Inhalten, URLs oder Rohdaten zu erstellen.
In diesem Beitrag untersuchen wir, wie man IronPDF mit TCP .Net integriert, um eine effektive Dokumenterstellung in .NET-Anwendungen zu erleichtern. Durch die Zusammenführung dieser Technologien können Programmierer die Produktivität und Skalierbarkeit ihrer Anwendungen erhöhen, indem sie die Netzwerkkommunikation nutzen, um Daten zu erhalten, mit entfernten Systemen zu arbeiten und dynamische PDF-Seiten zu erstellen.
Wie man TCP/IP-Kommunikation nutzt
Erstellen Sie ein neues C#-Projekt in Visual Studio.
Importieren Sie den Namespace System.Net und System.Net.Sockets.
Erstellen Sie ein TCP-Server- und ein TCP-Client-Programm. Geben Sie die IP-Adresse und die Portnummer an.
Senden Sie die Nachricht vom Server an den Client. Protokollieren Sie die Servernachricht vom Client im Bericht.
Schließen Sie die Verbindungen.
Einführung in TCP .NET
Ein Satz von Kommunikationsprotokollen, bekannt als TCP/IP (Transmission Control Protocol/Internet Protocol), regelt das Senden und Empfangen von Daten über Netzwerke, hauptsächlich das Internet. TCP/IP bietet einen standardisierten Rahmen für die Kommunikation zwischen Computern und Geräten und ermöglicht die Übertragung von Daten über verbundene Netzwerke. Es gibt verschiedene Schichten von TCP/IP, und jede ist für bestimmte Aspekte der Kommunikation zuständig.
Das Internetprotokoll (IP), das die Adressierung und Weiterleitung von Datenpaketen zwischen Geräten in einem Netzwerk verwaltet, ist der grundlegende Bestandteil von TCP/IP. Jedes mit dem Netzwerk verbundene Gerät erhält eine einzigartige IP-Adresse oder Netzwerkadresse von IP zugewiesen, die es ermöglicht, Daten zu bestimmten Orten zu übertragen und von dort zu empfangen.
Merkmale des TCP-Protokolls
1. Verlässlichkeit
Sequenznummern, Bestätigungen und erneute Übertragungen sind nur einige der Techniken, die TCP verwendet, um eine zuverlässige Datenübertragung zu gewährleisten. Ein Absender stellt Datenpakete zu und wartet dann darauf, dass der Empfänger die erfolgreiche Zustellung des Pakets bestätigt. Um sicherzustellen, dass das Datenpaket zugestellt wird, sendet der Absender es erneut, wenn innerhalb einer vorgegebenen Zeitspanne keine Bestätigung eingeht. Dieser Zuverlässigkeitsmechanismus hilft dabei, übertragungsbedingte Datenverluste oder -beschädigungen zu vermeiden.
2. Verbindungsorientierte Kommunikation
Vor dem Senden von Daten stellt das TCP-Protokoll eine Verbindung zwischen dem Absender und dem Empfänger her. Um die Synchronisation herzustellen und die Kommunikationseinstellungen festzulegen, führen Sender und Empfänger während des Verbindungsaufbaus ein dreifaches Handshake-Verfahren durch. Daten können zwischen den Parteien hin und her übertragen werden, bis die Verbindung unterbrochen wird.
3. Verwaltung des Warenflusses
Um die Geschwindigkeit zu steuern, mit der Daten vom Absender zum Empfänger gesendet werden, verwendet TCP Flusskontrollmethoden. Die Flusskontrolle verwendet Gleitfensterverfahren, um zu verhindern, dass der Absender zu viele Daten an den Empfänger sendet. Der Sender kann seine Übertragungsrate ändern, indem er auf die Mitteilung des Empfängers über seinen verfügbaren Pufferplatz reagiert. Auf diese Weise werden die Netzressourcen effektiv genutzt und Überlastungen oder Pufferüberläufe vermieden.
Erste Schritte mit TCP
Erstellen eines neuen Projekts in Visual Studio
Um die Visual Studio-Anwendung zu öffnen, wählen Sie das Menü Datei. Wählen Sie "Neues Projekt" und dann "Konsolenanwendung"
Nachdem Sie den Speicherort der Datei ausgewählt haben, geben Sie den Projektnamen in das zugewiesene Textfeld ein. Klicken Sie anschließend auf die Schaltfläche Erstellen, nachdem Sie das gewünschte .NET-Framework ausgewählt haben, wie im folgenden Beispiel zu sehen.
Einrichten von TCP in C# Projekten
Die Network System.NET Base Class Library enthält den Sockets-Namespace, der in Ihrem C#-Projekt standardmäßig verfügbar sein sollte. Es bietet Klassen für den Umgang mit Sockets, die Endpunkte der Netzwerkkommunikation sind.
Implementierung von TCP in der Windows-Konsole und in Formularen
TCP wird von einer Reihe von C#-Anwendungstypen unterstützt, darunter Windows Forms (WinForms) und Windows Console. Obwohl jedes Framework eine andere Implementierung hat, ist das Grundkonzept immer dasselbe: TCP/IP dient als Container für die Kommunikation zwischen dem Client und dem Server Ihrer Anwendung.
Ein einfaches Beispiel für die Kommunikation zwischen Client und Server mit TCP
Der TCP-Code ist in zwei Teile unterteilt: ein Teil ist der Server, der andere der Client. Der Servercode sendet die Nachricht an den Client unter Verwendung der IP-Adresse und des Ports, und der Client empfängt die Daten und verarbeitet sie entsprechend.
TCP-Server-Code
using System.Net;
using System.Net.Sockets;
System.Net.ServicePointManager.Expect100Continue = false;
System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls
SecurityProtocolType.Tls11
SecurityProtocolType.Tls12;
var endPoint = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 57472);
TcpClient client = new TcpClient();
client.Connect(endPoint);
NetworkStream stream = client.GetStream();
StreamWriter writer = new StreamWriter(stream);
writer.WriteLine("Hello, Ironpdf");
writer.Flush();
Console.WriteLine("Message sent");
Console.ReadKey();
using System.Net;
using System.Net.Sockets;
System.Net.ServicePointManager.Expect100Continue = false;
System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls
SecurityProtocolType.Tls11
SecurityProtocolType.Tls12;
var endPoint = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 57472);
TcpClient client = new TcpClient();
client.Connect(endPoint);
NetworkStream stream = client.GetStream();
StreamWriter writer = new StreamWriter(stream);
writer.WriteLine("Hello, Ironpdf");
writer.Flush();
Console.WriteLine("Message sent");
Console.ReadKey();
Imports System.Net
Imports System.Net.Sockets
System.Net.ServicePointManager.Expect100Continue = False
System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls SecurityProtocolType.Tls11 SecurityProtocolType.Tls12
Dim endPoint = New IPEndPoint(IPAddress.Parse("127.0.0.1"), 57472)
Dim client As New TcpClient()
client.Connect(endPoint)
Dim stream As NetworkStream = client.GetStream()
Dim writer As New StreamWriter(stream)
writer.WriteLine("Hello, Ironpdf")
writer.Flush()
Console.WriteLine("Message sent")
Console.ReadKey()
$vbLabelText $csharpLabel
Servercode: Wir erstellen einen TCP-Servercode, der die Datenpakete an den verbundenen Client sendet. Das obige Beispiel zeigt, dass wir ein Objekt für die Klasse TCPClient erstellen. Um eine Verbindung zum Client herzustellen, werden die IP-Adressen und die Nummer des Remote-Ports übergeben. Es wird eine Socket-Verbindung mit der TCP-Verbindung erstellt. Dann senden die TCP-Server eine Nachricht über den TCP-Socket.
TCP-Client-Code
// TCP client code
using System.Net;
using System.Net.Sockets;
Console.WriteLine("Message from server : Hello, Ironpdf");
System.Net.ServicePointManager.Expect100Continue = false;
System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls
SecurityProtocolType.Tls11
SecurityProtocolType.Tls12;
TcpClient client = new TcpClient();
var endPoint = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 57472);
client.Connect(endPoint);
await using NetworkStream stream = client.GetStream();
StreamReader reader = new StreamReader(stream);
string response = reader.ReadLine();
Console.WriteLine(response);
Console.ReadKey();
// TCP client code
using System.Net;
using System.Net.Sockets;
Console.WriteLine("Message from server : Hello, Ironpdf");
System.Net.ServicePointManager.Expect100Continue = false;
System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls
SecurityProtocolType.Tls11
SecurityProtocolType.Tls12;
TcpClient client = new TcpClient();
var endPoint = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 57472);
client.Connect(endPoint);
await using NetworkStream stream = client.GetStream();
StreamReader reader = new StreamReader(stream);
string response = reader.ReadLine();
Console.WriteLine(response);
Console.ReadKey();
' TCP client code
Imports System.Net
Imports System.Net.Sockets
Console.WriteLine("Message from server : Hello, Ironpdf")
System.Net.ServicePointManager.Expect100Continue = False
System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls SecurityProtocolType.Tls11 SecurityProtocolType.Tls12
Dim client As New TcpClient()
Dim endPoint = New IPEndPoint(IPAddress.Parse("127.0.0.1"), 57472)
client.Connect(endPoint)
Await using NetworkStream stream = client.GetStream()
Dim reader As New StreamReader(stream)
Dim response As String = reader.ReadLine()
Console.WriteLine(response)
Console.ReadKey()
$vbLabelText $csharpLabel
Im obigen Client-Code, der eine Verbindung zum TCP-Socket herstellt und die vom TCP-Server empfangene String-Nachricht mit interner Pufferung liest, wird die gesamte Nachricht auf der Konsole angezeigt. Es gibt keinen Standardwert für das Leerlaufzeitlimit. Wir können dies einstellen, was uns hilft, die Verbindung nach einer bestimmten Zeit zu schließen. Andernfalls wartet es, bis es eine Antwort vom Server/Client erhält.
Zeigen Sie im obigen Codeschnipsel die Kommunikation zwischen dem Client und dem Server an und geben Sie die Antwort auf der Konsole aus.
TCP-Protokoll Operationen
Socket Management
Für die Verbindung und den Datenaustausch zwischen den Endpunkten werden TCP-Sockets verwendet. Um über TCP zu interagieren, müssen Anwendungen je nach Bedarf Sockets erstellen, binden, abhören, akzeptieren, verbinden und schließen.
Sicherheit
Die über ein Netz transportierten Daten können mit TCP und Sicherheitsprotokollen wie TLS/SSL verschlüsselt werden, um Vertraulichkeit und Integrität zu gewährleisten.
Durchflusskontrolle
Mit Hilfe von Flusskontrollmethoden stellt TCP sicher, dass der Absender nicht zu viele Daten an den Empfänger sendet. Zu diesem Zweck wird die Datenmenge, die bis zum Erhalt einer Bestätigung übertragen werden kann, durch TCP-Fensterung ständig angepasst.
Basic Client und Server Verbindung
Um eine Verbindung zu einem TCP-Server herzustellen, können Sie einen TCP-Client erstellen. Verwenden Sie dazu die Klasse TcpClient.
TcpClient client = new TcpClient();
var endPoint = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 57472);
client.Connect(endPoint);
TcpClient client = new TcpClient();
var endPoint = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 57472);
client.Connect(endPoint);
Dim client As New TcpClient()
Dim endPoint = New IPEndPoint(IPAddress.Parse("127.0.0.1"), 57472)
client.Connect(endPoint)
$vbLabelText $csharpLabel
Integration von TCP in IronPDF
Gemeinsame Nutzung von TCP und IronPDF
Wenn TCP/IP-Netzwerke und PDF-Generierung in einer .NET-Anwendung mit IronPDF integriert werden, können Entwickler PDF-Dokumente dynamisch basierend auf Daten erstellen, die über eine TCP/IP-Verbindung empfangen werden. Da diese Schnittstelle die Erstellung und Anpassung von Dokumenten in Echtzeit ermöglicht, kann sie für eine Vielzahl von Zwecken verwendet werden, einschließlich der Erstellung von Auszügen, Rechnungen und Berichten auf der Grundlage von Echtzeit-Datenströmen.
Geben Sie in der Paketmanager-Konsole den folgenden Befehl ein:
Install-Package IronPdf
Alternativ können Sie IronPDF auch mit dem NuGet Package Manager for Solutions installieren.
Suchen Sie das IronPDF-Paket in den Suchergebnissen, wählen Sie es aus und klicken Sie dann auf die Schaltfläche "Installieren". Der Download und die Installation werden von Visual Studio automatisch durchgeführt.
NuGet installiert das IronPDF-Paket zusammen mit allen für Ihr Projekt erforderlichen Abhängigkeiten.
Nach der Installation kann IronPDF für Ihr Projekt verwendet werden.
Installation über die NuGet-Website
Besuchen Sie die IronPDF-Seite auf der NuGet-Website, um mehr über die Funktionen, Kompatibilität und andere Download-Optionen von IronPDF zu erfahren.
DLL zur Installation verwenden
Alternativ können Sie IronPDF direkt in Ihr Projekt integrieren, indem Sie dessen DLL-Datei verwenden. Um die ZIP-Datei, die die DLL enthält, herunterzuladen, klicken Sie auf die IronPDF ZIP-Datei-Download-Seite. Nachdem Sie die DLL entpackt haben, fügen Sie sie in Ihr Projekt ein.
Umsetzung der Logik
Diese Integration ermöglicht die Erstellung und Anpassung von Dokumenten in Echtzeit und eignet sich damit für verschiedene Anwendungsfälle wie die Erstellung von Berichten, Rechnungen und Auszügen auf der Grundlage von Live-Datenströmen.
Herstellung der Verbindung: Eine zuverlässige, verbindungsorientierte Kommunikationsmethode wird von TCP angeboten. Der Prozess zur Herstellung einer Verbindung umfasst drei Schritte: SYN, SYN-ACK und ACK. Damit wird sichergestellt, dass Server und Client zum Datenaustausch bereit sind.
Daten senden: Daten können nach dem Herstellen einer Verbindung zwischen Endpunkten übertragen werden. TCP stellt sicher, dass die Daten korrekt und in der richtigen Reihenfolge gesendet werden. Die Daten werden in Segmente zerlegt, getrennt übertragen und beim Empfänger wieder zusammengefügt.
Empfangen von Daten: TCP puffert eingehende Daten auf der Empfängerseite, bis die Anwendung sie verarbeiten kann. Verloren gegangene oder beschädigte Segmente werden vom Empfänger zur erneuten Übermittlung angefordert, der auch den Empfang der Segmente bestätigt.
PDF speichern und benachrichtigen: Um ein PDF-Dokument dynamisch auf Basis der bereitgestellten Daten zu erstellen, verwenden Sie IronPDF. Erstellen Sie mit den erhaltenen Daten HTML-Inhalte oder Vorlagen. Nutzen Sie dann die API von IronPDF, um den HTML-Inhalt in ein PDF-Dokument zu verwandeln.
// IronPDF code here
var Renderer = new ChromePdfRenderer();
Renderer.RenderHtmlAsPdf("<h1>Dynamic PDF Document</h1><p>Data from network: "+ response+"</p>").SaveAs("document.pdf");
Console.ReadKey();
// IronPDF code here
var Renderer = new ChromePdfRenderer();
Renderer.RenderHtmlAsPdf("<h1>Dynamic PDF Document</h1><p>Data from network: "+ response+"</p>").SaveAs("document.pdf");
Console.ReadKey();
' IronPDF code here
Dim Renderer = New ChromePdfRenderer()
Renderer.RenderHtmlAsPdf("<h1>Dynamic PDF Document</h1><p>Data from network: " & response & "</p>").SaveAs("document.pdf")
Console.ReadKey()
Nachfolgend finden Sie das Ergebnis der Ausführung:
Schlussfolgerung
Abschließend bietet die Integration von TCP/IP-Netzwerk mit IronPDF in .NET-Anwendungen eine starke Methode zur dynamischen Erstellung von PDF-Dokumenten auf der Grundlage von Echtzeitdaten, die über eine Netzwerkverbindung empfangen werden. Mit dieser Methode können Entwickler Systeme zur Dokumentenerstellung konstruieren, die effektiv und anpassungsfähig für eine Vielzahl von Branchen und Anwendungsfällen sind.
Entwickler können sich über TCP/IP-Netzwerke zuverlässig mit entfernten Servern oder Geräten verbinden und so Echtzeit-Datenströme empfangen, die IronPDF problemlos in PDF-Publikationen einbinden kann. Mit Hilfe dieser Integration können Entwickler personalisierte Berichte, Rechnungen, Auszüge und andere Dokumente sofort und ohne menschliche Beteiligung erstellen.
Das $749 Lite-Paket umfasst eine unbefristete Lizenz, ein Jahr Software-Wartung und ein Bibliotheks-Upgrade für IronPDF. Besuchen Sie die Iron Software Website, um mehr über die Iron Software-Bibliotheken zu erfahren.
Chipego hat eine natürliche Fähigkeit zum Zuhören, die ihm hilft, Kundenprobleme zu verstehen und intelligente Lösungen anzubieten. Er trat dem Iron Software-Team 2023 bei, nachdem er einen Bachelor of Science in Informationstechnologie erworben hatte. IronPDF und IronOCR sind die beiden Produkte, auf die sich Chipego konzentriert hat, aber sein Wissen über alle Produkte wächst täglich, da er neue Wege findet, Kunden zu unterstützen. Er genießt die Zusammenarbeit bei Iron Software, da Teammitglieder aus dem gesamten Unternehmen ihre unterschiedlichen Erfahrungen einbringen und so zu effektiven, innovativen Lösungen beitragen. Wenn Chipego nicht an seinem Schreibtisch sitzt, kann man ihn oft bei einem guten Buch oder beim Fußballspielen antreffen.
< PREVIOUS MySqlclient C# (Wie es für Entwickler funktioniert)
NÄCHSTES > Prism-Protokollierung (So funktioniert es für Entwickler)