Chapter 33. System.Net
System.Net
supports a high-level API for working with common Internet
protocols (HTTP being the principal example) without having to deal with
low-level details (such as the actual protocol format). In addition, this
namespace provides some high-level constructs for working with
networks — TCP/IP in particular.
Most C# programmers will work with either the WebClient
type, which provides the most high-level view of doing HTTP-style
request/response communications over a TCP/IP network (such as the
Internet), or else the slightly lower-level WebRequest
and WebResponse
types. The choice between the two is
really not all that difficult—for most high-level, protocol-agnostic
work, WebClient
will likely be the preferred choice.
If protocol-specific actions need to be taken (such as specifying additional
headers as part of an HTTP request, for example), then likely the C#
programmer will want to work with WebRequest
and
WebResponse
. To be specific, the C# programmer will
work with the concrete derived types HttpWebRequest
and
HttpWebResponse
.
As shipped, the .NET Framework Class Library provides implementations for three
URI protocol schemes: HTTP, HTTPS, and files (http:, https: and file:,
respectively). For support of other URI types (such as FTP, NNTP, or
POP3), a new derivative of WebRequest
and
WebResponse
must be written, an Abstract Factory type
implementing the IWebRequestCreate
interface must be created, and an instance of it (along with the protocol ...
Get C# 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.