Netzwerkprogrammierung in C#
Dieses Tutorial zeigt, wie wir die vom .NET-Framework bereitgestellte System.NET
-Bibliothek verwenden können, um eine Netzwerkanwendung in C# zu erstellen.
Netzwerkprogrammierung in C#
Die Bibliothek System.NET
des .NET-Frameworks stellt ein einfaches Framework für die Netzwerkprogrammierung in C# zur Verfügung.
Es gibt zwei Arten von Netzwerkanwendungen; Client und Server. Die Client-Anwendungen fordern die Server-Anwendung auf, eine Aufgabe über das Netzwerk auszuführen, und die Server-Anwendung führt diese Aufgabe aus und gibt die Ergebnisse an die Client-Anwendung zurück.
Wir können diese Client-Server-Anwendung mit dem Namensraum System.NET
in C# programmieren. Beginnen wir mit dem Lernen von URI
unten.
Einheitlicher Ressourcenindikator
Beim Netzwerken verwendet der Client einen einheitlichen Ressourcenindikator oder URI
, um den Typ der erforderlichen Ressource anzugeben. Der URI
setzt sich aus verschiedenen Fragmenten zusammen:
Schemakennung
– Gibt das Kommunikationsprotokoll für Anfrage und Antwort an.server identifier
- Ein DNS-Hostname oder eine TCP-Adresse identifiziert den Server eindeutig im Internet.Pfadkennung
– Lokalisiert die Informationen, die wir auf dem Server angefordert haben; und eine optionale Abfragezeichenfolge, die Informationen vom Client an den Server weiterleitet.
Die Klasse URI
im Namensraum System.NET
schafft einen einheitlichen Ressourcenbezeichner in C#. Der folgende Codeblock zeigt uns, wie man die Klasse URI
in C# verwendet.
var resource = "http://webcode.me:80/";
var path = new Uri(resource);
Console.WriteLine("Port : " + path.Port);
Console.WriteLine("Hostname : " + path.Host);
Console.WriteLine("Path : " + path.LocalPath);
Console.WriteLine("Scheme : " + path.Scheme);
Ausgang:
Port: 80
Hostname: webcode.me
Path: /
Scheme: http
Der obige Code nimmt einen string
, wandelt diesen string
in einen URI
um und gibt dann verschiedene Fragmente dieses neu erstellten URI
aus. Darüber hinaus führt diese URI
-Klasse automatisch einige Validierungen durch, um sicherzustellen, dass die URIs
gut formatiert sind.
Diese Validierungen können manchmal nach hinten losgehen und den gesamten URI
zerstören. Wir können diesen Effekt auch deaktivieren, indem wir UriCreationOptions.DangerousDisablePathAndQueryCanonicalization
auf true
setzen.
Es deaktiviert die Validierungen, sodass wir die Eigenschaft Uri.Fragments
nicht verwenden können.
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn