WebClient::Credentials Property


The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Gets or sets the network credentials that are sent to the host and used to authenticate the request.

Namespace:   System.Net
Assembly:  System (in System.dll)

property ICredentials^ Credentials {
	ICredentials^ get();
	void set(ICredentials^ value);

Property Value

Type: System.Net::ICredentials^

An ICredentials containing the authentication credentials for the request. The default is null.

The Credentials property contains the authentication credentials used to access a resource on a host. In most client-side scenarios, you should use the DefaultCredentials, which are the credentials of the currently logged on user. To do this, set the UseDefaultCredentials property to true instead of setting this property.

If the WebClient class is being used in a middle tier application, such as an ASP.NET application, the DefaultCredentials belong to the account running the ASP page (the server-side credentials). Typically, you would set this property to the credentials of the client on whose behalf the request is made.

The following code example uses the user's system credentials to authenticate a request.

int main()
      WebClient^ client = gcnew WebClient;
      client->Credentials = CredentialCache::DefaultCredentials;
      array<Byte>^pageData = client->DownloadData( "http://www.contoso.com" );
      String^ pageHtml = Encoding::ASCII->GetString( pageData );
      Console::WriteLine( pageHtml );
   catch ( WebException^ webEx ) 
      Console::Write( webEx );


.NET Framework
Available since 1.1
Available since 3.0
Windows Phone Silverlight
Available since 7.0
Return to top