Chapter 16. Networking
The Framework offers a variety of classes in the System.Net.*
namespaces for communicating via standard network protocols, such as HTTP, TCP/IP, and FTP. Here’s a summary of the key components:
A
WebClient
façade class for simple download/upload operations via HTTP or FTPWebRequest
andWebResponse
classes for low-level control over client-side HTTP or FTP operationsHttpClient
for consuming HTTP web APIs and RESTful servicesHttpListener
for writing an HTTP serverSmtpClient
for constructing and sending mail messages via SMTPDns
for converting between domain names and addressesTcpClient
,UdpClient
,TcpListener
, andSocket
classes for direct access to the transport and network layers
These types are all part of .NET Standard 2.0, which means UWP applications can use them. UWP apps can also use the Windows Runtime (WinRT) types for TCP and UDP communication in Windows.Networking.Sockets
, which we demonstrate in the final section in this chapter. These have the advantage of encouraging asynchronous programming.
The .NET types in this chapter are in the System.Net.*
and System.IO
namespaces.
Network Architecture
Figure 16-1 illustrates the .NET networking types and the communication layers in which they reside. Most types reside in the transport layer or application layer. The transport layer defines basic protocols for sending and receiving bytes (TCP and UDP); the application layer defines higher-level protocols designed for specific applications such ...
Get C# 8.0 in a Nutshell now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.