Uri.Scheme Property

Microsoft Silverlight will reach end of support after October 2021. Learn more.

Gets the scheme name for this URI.

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

Syntax

'Declaration
Public ReadOnly Property Scheme As String
public string Scheme { get; }

Property Value

Type: System.String
A String that contains the scheme for this URI, converted to lowercase.

Exceptions

Exception Condition
InvalidOperationException

This property is valid only for an absolute Uri instance.

Remarks

The Scheme property returns the scheme used to initialize the Uri instance. This property does not indicate that the scheme used to initialize the Uri instance was recognized.

The following table shows examples of some possible values returned by the Scheme property.

Scheme

Description

file

The resource is a file on the local computer.

ftp

The resource is accessed through FTP.

gopher

The resource is accessed through the Gopher protocol.

http

The resource is accessed through HTTP.

https

The resource is accessed through SSL-encrypted HTTP.

ldap

The resource is accessed through the LDAP protocol.

mailto

The resource is an e-mail address and accessed through the SMTP protocol.

net.pipe

The resource is accessed through a named pipe.

net.tcp

The resource is accessed from TCP endpoint.

news

The resource is accessed through the NNTP protocol.

nntp

The resource is accessed through the NNTP protocol.

telnet

The resource is accessed through the TELNET protocol.

uuid

The resource is accessed through a unique UUID endpoint name for communicating with a service.

Silverlight-based applications are cross-platform, so they run in most modern Web browsers, including Apple Safari version 2.0 and later on Apple Mac OS X. However, full parsing for UNC style paths in a Uri is supported only on Windows. Any backslashes in a Uri for the UriSchemeFile representing a UNC path are converted to forward slashes on Apple Mac OS X.

An example that displays this issue is below:

Uri testUri = Uri(@"file://\\computer\download\file.ext");

On Windows, this UNC path is converted to the following Uri:

file://computer/download/file.ext

The AbsolutePath is /download/file.ext.

The Host property is equal to: computer.

The IsUnc property is true.

The LocalPath property is \\computer\download\file.ext.

On Apple Mac OS X, this UNC path is converted to the following Uri:

file::////computer/download/file.ext

The AbsolutePath property is //computer/download/file.ext.

The Host property is an empty string.

The IsUnc property is false.

The LocalPath property is computer/download/file.ext.

The constructors for Uri allow a Silverlight application to create a Uri instance for any of the schemes listed above. However, only Uri instances for the UriSchemeHttp or UriSchemeHttps schemes are supported by the WebClient and HTTP classes in the System.Net namespace.

Examples

The following example writes the scheme name (http) to the console for the https://www.contoso.com/ URI.

  Dim baseUri As New Uri("https://www.contoso.com/")
  Dim myUri As New Uri(baseUri, "catalog/shownew.htm?date=today")

  outputBlock.Text &= "Uri.Scheme: "
  outputBlock.Text &= myUri.Scheme
  outputBlock.Text &= vbCrLf

   Uri baseUri = new Uri("https://www.contoso.com/");
   Uri myUri = new Uri(baseUri, "catalog/shownew.htm?date=today");

   outputBlock.Text += "Uri.Scheme: ";
   outputBlock.Text += myUri.Scheme;
   outputBlock.Text += "\n";

Version Information

Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Xbox 360, Windows Phone OS 7.0

Platforms

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.

See Also

Reference