This documentation is archived and is not being maintained.

WebRequest.PreAuthenticate Property

When overridden in a descendant class, indicates whether to preauthenticate the request.

[Visual Basic]
Public Overridable Property PreAuthenticate As Boolean
public virtual bool PreAuthenticate {get; set;}
public: __property virtual bool get_PreAuthenticate();
public: __property virtual void set_PreAuthenticate(bool);
public function get PreAuthenticate() : Boolean;
public function set PreAuthenticate(Boolean);

Property Value

true to preauthenticate; otherwise, false.


Exception Type Condition
NotSupportedException Any attempt is made to get or set the property, when the property is not overridden in a descendant class.


The PreAuthenticate property indicates whether to send authentication information with the initial request. When PreAuthenticate is false, the WebRequest waits for an authentication challenge before sending authentication information.

Note   The WebRequest class is an abstract (MustInherit in Visual Basic) class. The actual behavior of WebRequest instances at run time is determined by the descendant class returned by the WebRequest.Create method. For more information about default values and exceptions, see the documentation for the descendant classes, such as HttpWebRequest and FileWebRequest.


[Visual Basic, C#, C++] The following example sets the PreAuthenticate property to true so that the NetworkCredential stored in the Credentials property will be sent to along with the resource request.

[Visual Basic] 

' Create a new webrequest to the mentioned URL.
Dim myWebRequest As WebRequest = WebRequest.Create(url)

' Set 'Preauthenticate'  property to true.
myWebRequest.PreAuthenticate = True
Console.WriteLine(ControlChars.Cr + "Please Enter ur credentials for the requested Url")
Dim UserName As String = Console.ReadLine()
Dim Password As String = Console.ReadLine()

' Create a New 'NetworkCredential' object.
Dim networkCredential As New NetworkCredential(UserName, Password)

' Associate the 'NetworkCredential' object with the 'WebRequest' object.
myWebRequest.Credentials = networkCredential

' Assign the response object of 'WebRequest' to a 'WebResponse' variable.
Dim myWebResponse As WebResponse = myWebRequest.GetResponse()


                     // Create a new webrequest to the mentioned URL.
            WebRequest myWebRequest=WebRequest.Create(url);

            // Set 'Preauthenticate'  property to true.  Credentials will be sent with the request.

            Console.WriteLine("\nPlease Enter ur credentials for the requested Url");
            string UserName=Console.ReadLine();
            string Password=Console.ReadLine();

            // Create a New 'NetworkCredential' object.
            NetworkCredential networkCredential=new NetworkCredential(UserName,Password);

            // Associate the 'NetworkCredential' object with the 'WebRequest' object.

            // Assign the response object of 'WebRequest' to a 'WebResponse' variable.
            WebResponse myWebResponse=myWebRequest.GetResponse();

// Create a new webrequest to the mentioned URL.
WebRequest* myWebRequest=WebRequest::Create(url);

// Set 'Preauthenticate' property to true. Credentials will be sent with the request.

Console::WriteLine(S"\nPlease Enter your credentials for the requested Url");
String* UserName=Console::ReadLine();
String* Password=Console::ReadLine();

// Create a New 'NetworkCredential' object.
NetworkCredential* networkCredential =
   new NetworkCredential(UserName, Password);

// Associate the 'NetworkCredential' object with the 'WebRequest' object.

// Assign the response object of 'WebRequest' to a 'WebResponse' variable.
WebResponse* myWebResponse=myWebRequest->GetResponse();

[JScript] No example is available for JScript. To view a Visual Basic, C#, or C++ example, click the Language Filter button Language Filter in the upper-left corner of the page.


Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family, .NET Compact Framework, Common Language Infrastructure (CLI) Standard

See Also

WebRequest Class | WebRequest Members | System.Net Namespace | HttpWebRequest.PreAuthenticate