提供向 URI 标识的资源发送数据和从 URI 标识的资源接收数据的公共方法。不能继承此类。
[Visual Basic]
<ComVisible(True)>
NotInheritable Public Class WebClient
Inherits Component
[C#]
[ComVisible(true)]
public sealed class WebClient : Component
[C++]
[ComVisible(true)]
public __gc __sealed class WebClient : public Component
线程安全
此类型的所有公共静态(Visual Basic 中为 Shared)成员对多线程操作而言都是安全的。但不保证任何实例成员是线程安全的。
备注
WebClient 类提供向 URI 标识的任何本地、Intranet 或 Internet 资源发送数据以及从这些资源接收数据的公共方法。
Try
Dim client As New WebClient()
Dim pageData As [Byte]() = client.DownloadData("http://www.contoso.com")
Dim pageHtml As String = Encoding.ASCII.GetString(pageData)
' Download the data to a buffer.
Console.WriteLine(pageHtml)
' Download the data to a file.
client.DownloadFile("http://www.contoso.com", "page.htm")
' Upload some form post values.
dim form as New NameValueCollection()
form.Add("MyName", "MyValue")
' Note that you need to replace "http://localhost/somefile.aspx" with the name of
' a file that is available to your computer.
Dim responseData As [Byte]() = client.UploadValues("http://www.contoso.com/form.aspx", form)
Console.WriteLine(Encoding.ASCII.GetString(responseData))
Catch webEx As WebException
if webEx.Status = WebExceptionStatus.ConnectFailure then
Console.WriteLine("Are you behind a firewall? If so, go through the proxy server.")
end if
Console.Write(webEx.ToString())
End Try
End Sub 'Main
[C#]
try {
// Download the data to a buffer.
WebClient client = new WebClient();
// Download the data to a file.
client.DownloadFile("http://www.contoso.com", "page.htm");
// Upload some form post values.
NameValueCollection form = new NameValueCollection();
form.Add("MyName", "MyValue");
Byte[] responseData = client.UploadValues("http://www.contoso.com/form.aspx", form);
}
catch (WebException webEx) {
Console.WriteLine(webEx.ToString());
if(webEx.Status == WebExceptionStatus.ConnectFailure) {
Console.WriteLine("Are you behind a firewall? If so, go through the proxy server.");
}