WebRequest::RequestUri Property


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

When overridden in a descendant class, gets the URI of the Internet resource associated with the request.

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

property Uri^ RequestUri {
	virtual Uri^ get();

Property Value

Type: System::Uri^

A Uri representing the resource associated with the request

Exception Condition

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

When overridden in a descendant class, the RequestUri property contains the Uri instance that Create method uses to create the request.


The WebRequest class is an abstract 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.

Notes to Inheritors:

RequestUri must contain the original Uri instance passed to the Create method. If the protocol is able to redirect the request to a different URI to service the request, the descendant must provide a property to contain the URI that actually services the request

The following example checks the RequestUri property to determine the site originally requested.

   // Create a new WebRequest object to the mentioned URL.
   WebRequest^ myWebRequest = WebRequest::Create( "http://www.contoso.com" );
   Console::WriteLine( "\nThe Uri requested is {0}", myWebRequest->RequestUri);
   // Assign the response object of 'WebRequest' to a 'WebResponse' variable.
   WebResponse^ myWebResponse = myWebRequest->GetResponse();
// Get the stream containing content returned by the server.
   Stream^ streamResponse = myWebResponse->GetResponseStream();
Console::WriteLine("\nThe Uri that responded to the request is '{0}'",myWebResponse->ResponseUri);
   StreamReader^ reader = gcnew StreamReader(streamResponse);
// Read the content.
   String^ responseFromServer = reader->ReadToEnd();
   // Display the content.
   Console::WriteLine("\nThe HTML Contents received:");
   Console::WriteLine (responseFromServer);
   // Cleanup the streams and the response.

Universal Windows Platform
Available since 8
.NET Framework
Available since 1.1
Portable Class Library
Supported in: portable .NET platforms
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1
Return to top