System.Net Namespace

The System.Net namespace provides a simple programming interface for many of the protocols used on networks today. The WebRequest and WebResponse classes form the basis of what are called pluggable protocols, an implementation of network services that enables you to develop applications that use Internet resources without worrying about the specific details of the individual protocols.

Classes in the System.Net namespace can be used to develop Windows Store apps or desktop apps. When used in a Windows Store app, classes in the System.Net namespace are affected by network isolation feature, part of the application security model used by the Windows Developer Preview. The appropriate network capabilities must be enabled in the app manifest for a Windows Store app for the system to allow network access by a Windows Store app. For more information, see the Network Isolation for Windows Store Apps.

Classes

AuthenticationManager

Manages the authentication modules called during the client authentication process.

Authorization

Contains an authentication message for an Internet server.

CookieCollection

Provides a collection container for instances of the Cookie class.

CookieContainer

Provides a container for a collection of CookieCollection objects.

CookieException

The exception that is thrown when an error is made adding a Cookie to a CookieContainer.

CredentialCache

Provides storage for multiple credentials.

Dns

Provides simple domain name resolution functionality.

DnsEndPoint

Represents a network endpoint as a host name or a string representation of an IP address and a port number.

DnsPermission

Controls rights to access Domain Name System (DNS) servers on the network.

DnsPermissionAttribute

Specifies permission to request information from Domain Name Servers.

DownloadDataCompletedEventArgs

Provides data for the DownloadDataCompleted event.

DownloadProgressChangedEventArgs

Provides data for the DownloadProgressChanged event of a WebClient.

DownloadStringCompletedEventArgs

Provides data for the DownloadStringCompleted event.

EndPoint

Identifies a network address. This is an abstract class.

EndpointPermission

Defines an endpoint that is authorized by a SocketPermission instance.

FileWebRequest

Provides a file system implementation of the WebRequest class.

FileWebResponse

Provides a file system implementation of the WebResponse class.

FtpWebRequest

Implements a File Transfer Protocol (FTP) client.

FtpWebResponse

Encapsulates a File Transfer Protocol (FTP) server's response to a request.

GlobalProxySelection

Contains a global default proxy instance for all HTTP requests.

HttpListener

Provides a simple, programmatically controlled HTTP protocol listener. This class cannot be inherited.

HttpListenerBasicIdentity

Holds the user name and password from a basic authentication request.

HttpListenerContext

Provides access to the request and response objects used by the HttpListener class. This class cannot be inherited.

HttpListenerException

The exception that is thrown when an error occurs processing an HTTP request.

HttpListenerPrefixCollection

Represents the collection used to store Uniform Resource Identifier (URI) prefixes for HttpListener objects.

HttpListenerRequest

Describes an incoming HTTP request to an HttpListener object. This class cannot be inherited.

HttpListenerResponse

Represents a response to a request being handled by an HttpListener object.

HttpListenerTimeoutManager

The timeout manager to use for an HttpListener object.

HttpVersion

Defines the HTTP version numbers that are supported by the HttpWebRequest and HttpWebResponse classes.

HttpWebRequest

Provides an HTTP-specific implementation of the WebRequest class.

HttpWebResponse

Provides an HTTP-specific implementation of the WebResponse class.

IPAddress

Provides an Internet Protocol (IP) address.

IPEndPoint

Represents a network endpoint as an IP address and a port number.

IPEndPointCollection

Represents a collection used to store network endpoints as IPEndPoint objects.

IPHostEntry

Provides a container class for Internet host address information.

NetworkCredential

Provides credentials for password-based authentication schemes such as basic, digest, NTLM, and Kerberos authentication.

NetworkProgressChangedEventArgs

Provides data for the network progress changed event.

OpenReadCompletedEventArgs

Provides data for the OpenReadCompleted event.

OpenWriteCompletedEventArgs

Provides data for the OpenWriteCompleted event.

ProtocolViolationException

The exception that is thrown when an error is made while using a network protocol.

ServicePoint

Provides connection management for HTTP connections.

ServicePointManager

Manages the collection of ServicePoint objects.

SocketAddress

Stores serialized information from EndPoint derived classes.

SocketPermission

Controls rights to make or accept connections on a transport address.

SocketPermissionAttribute

Specifies security actions to control Socket connections. This class cannot be inherited.

TransportContext

The TransportContext class provides additional context about the underlying transport layer.

UiSynchronizationContext

Provides the synchronization context for the managed UI used in synchronization models.

UploadDataCompletedEventArgs

Provides data for the UploadDataCompleted event.

UploadFileCompletedEventArgs

Provides data for the UploadFileCompleted event.

UploadProgressChangedEventArgs

Provides data for the UploadProgressChanged event of a WebClient.

UploadStringCompletedEventArgs

Provides data for the UploadStringCompleted event.

UploadValuesCompletedEventArgs

Provides data for the UploadValuesCompleted event.

WebClient

Provides common methods for sending data to and receiving data from a resource identified by a URI.

WebException

The exception that is thrown when an error occurs while accessing the network through a pluggable protocol.

WebHeaderCollection

Contains protocol headers associated with a request or response.

WebPermission

Controls rights to access HTTP Internet resources.

WebPermissionAttribute

Specifies permission to access Internet resources. This class cannot be inherited.

WebProxy

Contains HTTP proxy settings for the WebRequest class.

WebRequest

Makes a request to a Uniform Resource Identifier (URI). This is an abstract class.

WebRequestMethods

Container class for WebRequestMethods.Ftp, WebRequestMethods.File, and WebRequestMethods.Http classes. This class cannot be inherited

WebRequestMethods.File

Represents the types of file protocol methods that can be used with a FILE request. This class cannot be inherited.

WebRequestMethods.Ftp

Represents the types of FTP protocol methods that can be used with an FTP request. This class cannot be inherited.

WebRequestMethods.Http

Represents the types of HTTP protocol methods that can be used with an HTTP request.

WebResponse

Provides a response from a Uniform Resource Identifier (URI). This is an abstract class.

WebUtility

Provides methods for encoding and decoding URLs when processing Web requests.

WriteStreamClosedEventArgs

Provides data for the WriteStreamClosed event.

Interfaces

IAuthenticationModule

Provides the base authentication interface for Web client authentication modules.

ICertificatePolicy

Validates a server certificate.

ICredentialPolicy

Defines the credential policy to be used for resource requests that are made using WebRequest and its derived classes.

ICredentials

Provides the base authentication interface for retrieving credentials for Web client authentication.

ICredentialsByHost

Provides the interface for retrieving credentials for a host, port, and authentication type.

INetworkProgress

Provides information on network progress in sending data over the network.

IUnsafeWebRequestCreate

Creates an unsafe WebRequest to a Uniform Resource Identifier (URI).

IWebProxy

Provides the base interface for implementation of proxy access for the WebRequest class.

IWebProxyScript

Provides the base interface to load and execute scripts for automatic proxy detection.

IWebRequestCreate

Provides the base interface for creating WebRequest instances.

Enums

AuthenticationSchemes

Specifies protocols for authentication.

DecompressionMethods

Represents the file compression and decompression encoding format to be used to compress the data received in response to an HttpWebRequest.

FtpStatusCode

Specifies the status codes returned for a File Transfer Protocol (FTP) operation.

HttpRequestHeader

The HTTP headers that may be specified in a client request.

HttpResponseHeader

The HTTP headers that can be specified in a server response.

HttpStatusCode

Contains the values of status codes defined for HTTP.

NetworkAccess

Specifies network access permissions.

SecurityProtocolType

Specifies the security protocols that are supported by the Schannel security package.

TransportType

Defines transport types for the SocketPermission and Socket classes.

WebExceptionStatus

Defines status codes for the WebException class.

Delegates

AuthenticationSchemeSelector

Selects the authentication scheme for an HttpListener instance.

BindIPEndPoint

Represents the method that specifies a local Internet Protocol address and port number for a ServicePoint.

CipherSuitesCallback
DownloadDataCompletedEventHandler

Represents the method that will handle the DownloadDataCompleted event of a WebClient.

DownloadProgressChangedEventHandler

Represents the method that will handle the DownloadProgressChanged event of a WebClient.

DownloadStringCompletedEventHandler

Represents the method that will handle the DownloadStringCompleted event of a WebClient.

HttpContinueDelegate

Represents the method that notifies callers when a continue response is received by the client.

HttpListener.ExtendedProtectionSelector

A delegate called to determine the ExtendedProtectionPolicy to use for each HttpListener request.

OpenReadCompletedEventHandler

Represents the method that will handle the OpenReadCompleted event of a WebClient.

OpenWriteCompletedEventHandler

Represents the method that will handle the OpenWriteCompleted event of a WebClient.

UploadDataCompletedEventHandler

Represents the method that will handle the UploadDataCompleted event of a WebClient.

UploadFileCompletedEventHandler

Represents the method that will handle the UploadFileCompleted event of a WebClient.

UploadProgressChangedEventHandler

Represents the method that will handle the UploadProgressChanged event of a WebClient.

UploadStringCompletedEventHandler

Represents the method that will handle the UploadStringCompleted event of a WebClient.

UploadValuesCompletedEventHandler

Represents the method that will handle the UploadValuesCompleted event of a WebClient.

WriteStreamClosedEventHandler

Represents the method that will handle the WriteStreamClosed event of a WebClient.