This documentation is archived and is not being maintained.

WebRequest.Create Method (String)

Initializes a new WebRequest instance for the specified URI scheme.

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

Public Shared Function Create ( _
	requestUriString As String _
) As WebRequest
Dim requestUriString As String
Dim returnValue As WebRequest

returnValue = WebRequest.Create(requestUriString)
public static WebRequest Create (
	String requestUriString
public static function Create (
	requestUriString : String
) : WebRequest



The URI that identifies the Internet resource.

Return Value

A WebRequest descendant for the specific URI scheme.

Exception typeCondition


The request scheme specified in requestUriString has not been registered.


requestUriString is a null reference (Nothing in Visual Basic).


The caller does not have permission to connect to the requested URI or a URI that the request is redirected to.


The URI specified in requestUriString is not a valid URI.

The Create method returns a descendant of the WebRequest class determined at run time as the closest registered match for requestUri.

For example, when a URI beginning with http:// is passed in requestUri, an HttpWebRequest is returned by Create. If a URI beginning with file:// is passed instead, the Create method will return a FileWebRequest instance.

The .NET Framework includes support for the http://, https://, and file:// URI schemes. Custom WebRequest descendants to handle other requests are registered with the RegisterPrefix method.

The Create method uses the requestUriString parameter to create a Uri instance that it passes to the new WebRequest.


This member outputs trace information when you enable network tracing in your application. For more information, see Network Tracing.

The following example uses Create to instantiate an HttpWebRequest instance. A string representing the target URL is used as the constructor parameter.

Dim ourUri As New Uri(url)
' Create a 'WebRequest' object with the specified url. 

Dim myWebRequest As WebRequest = WebRequest.Create(url)

' Send the 'WebRequest' and wait for response.
Dim myWebResponse As WebResponse = myWebRequest.GetResponse()

' "ResponseUri" property is used to get the actual Uri from where the response was attained.
If ourUri.Equals(myWebResponse.ResponseUri) Then
    Console.WriteLine(ControlChars.Cr + "Request Url : {0} was not redirected", url)
    Console.WriteLine(ControlChars.Cr + "Request Url : {0} was redirected to {1}", url, myWebResponse.ResponseUri)
End If 

' Release resources of response object.

Uri ourUri = new Uri(url);
// Create a 'WebRequest' object with the specified url. 
WebRequest myWebRequest = WebRequest.Create(url);
// Send the 'WebRequest' and wait for response.
WebResponse myWebResponse = myWebRequest.GetResponse();
// Use "ResponseUri" property to get the actual Uri from where the 
// response was attained.
if (ourUri.Equals(myWebResponse.get_ResponseUri())) {
    Console.WriteLine("\nRequest Url : {0} was not redirected", url);
else {
    Console.WriteLine("\nRequest Url : {0} was redirected to {1}", 
        url, myWebResponse.get_ResponseUri());
} // Release resources of response object.

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 2.0, 1.0