.NET Framework 网络操作基础

更新:2007 年 11 月

Microsoft .NET Framework 提供 Internet 服务的分层的、可扩展的和托管的实现,您可以将这些 Internet 服务快速而轻松地集成到您的应用程序中。若要使用这些类,必须完全限定类名称,或在受影响的代码开头包含一条或多条 Imports 语句以导入相应的命名空间。有关更多信息,请参见 Imports 语句(.NET 命名空间和类型)

访问 Internet 资源

要通过请求/响应模型访问 Internet 资源,需要三条信息。这三条信息由特定的 .NET Framework 类提供:

  • Uri 类包含 Internet 资源的 URI(统一资源标识符),该标识符至少由三部分(有时是四部分)组成,分别是方案标识符(用于标识通信协议)、服务器标识符、路径标识符和一个可选的查询字符串。

  • WebRequest 类包含对资源的请求。

  • WebResponse 类为传入响应提供容器。

上载和下载数据

对于需要发出简单的 Internet 资源请求的应用程序,WebClient 类提供了上载或下载数据的方法。由于 WebClient 依赖于 WebRequest 类来提供对 Internet 资源的访问,因此它可以使用任何已注册的可插入协议。

System.Net.Sockets 命名空间为不使用请求/响应模型的应用程序或需要侦听网络的应用程序提供 TcpClientTcpListenerUdpClient 类。这些类处理使用不同的传输协议建立连接的详细信息,并且作为流向应用程序公开网络连接。

有关更多信息,请参见请求数据

下表列出了涉及从 Internet 资源请求数据的常见任务。

要执行的操作

请参见

创建一个 Internet 请求

创建 Internet 请求

将数据发送到网络

在网络上使用流

异步请求 Internet 资源

实现异步请求

访问 HTTP 特定的属性

HTTP

将特定请求与连接池关联

连接分组

配置代理实例

通过代理访问 Internet

异步请求 Internet 资源

实现异步请求

使用 TCP 请求数据

使用 TCP 服务

使用 UDP 请求数据

使用 UDP 服务

可插入协议

WebRequestWebResponse 抽象类为可插入协议提供了基类。通过从 WebRequestWebResponse 派生协议特定的类,应用程序不必指定所使用的协议即可请求 Internet 资源中的数据并读取响应。

有关更多信息,请参见编写可插接式协议

下表列出了涉及可插入协议的常见任务。

要执行的操作

请参见

WebRequest 派生

从 WebRequest 派生

WebResponse 派生

从 WebResponse 派生

访问协议特定的属性

如何:转换 WebRequest 的类型以访问协议特定的属性

网络跟踪

网络跟踪提供对以下两项信息的访问:一是调用方法;二是托管应用程序生成的网络流量。此功能可用于调试正在开发的应用程序,也可用于分析已部署的应用程序。可以自定义网络跟踪所提供的输出,以支持在开发时和在生产环境中的不同使用方案。

有关更多信息,请参见网络跟踪

下表列出了涉及网络跟踪的常见任务。

要执行的操作

请参见

启用网络跟踪

启用网络跟踪

读取跟踪信息

解释网络跟踪

配置网络跟踪

如何:配置网络跟踪

缓存管理

缓存为应用程序已请求的资源提供临时存储。如果应用程序多次请求同一资源,则可从缓存中返回该资源,从而避免由于再次从服务器请求该资源而产生的开销。

缓存策略定义的规则可用于确定是否可以使用所请求资源的缓存副本来满足请求。

有关更多信息,请参见网络应用程序的缓存管理

下表列出了涉及缓存管理的常见任务。

要执行的操作

请参见

设置基于位置的缓存策略

如何:为应用程序设置基于位置的缓存策略

设置基于时间的默认缓存策略

如何:为应用程序设置默认的基于时间的缓存策略

自定义基于时间的缓存策略

如何:自定义基于时间的缓存策略

为某个请求设置缓存策略

如何:为请求设置缓存策略

安全性

System.Net 类为常用的 Internet 应用程序身份验证机制和 .NET Framework 代码访问权限提供了内置支持,从而为 Internet 应用程序提供了一个安全环境。

有关更多信息,请参见 System.Net 类的最佳做法

下表列出了涉及安全性的常见任务。

要执行的操作

请参见

使用安全套接字层 (SSL) 连接到 HTTP 服务器

使用安全套接字层

使用 HTTP 身份验证方法建立与 HTTP 服务器的已验证连接

Internet 身份验证

为使用 Internet 连接的应用程序设置代码访问安全性

Web 与套接字权限

使用基本身份验证和摘要式身份验证

基本和简要身份验证

使用 NTML 身份验证和 Kerberos 身份验证

NTLM 和 Kerberos 身份验证

使用 System.Net 来保护 XML Web services

保证使用 ASP.NET 创建的 XML Web services 的安全

请参见

概念

System.Net 类的最佳做法

配置 Internet 应用程序

参考

System.Net

System.Net.Sockets

其他资源

网络编程

Visual Studio 中的网络命名空间