Uri Construtores

Definição

Inicializa uma nova instância da Uri classe.

Sobrecargas

Name Description
Uri(String)

Inicializa uma nova instância da Uri classe com o URI especificado.

Uri(SerializationInfo, StreamingContext)
Obsoleto.

Inicializa uma nova instância da Uri classe a partir das instâncias especificadas das SerializationInfo classes e StreamingContext .

Uri(String, Boolean)
Obsoleto.
Obsoleto.
Obsoleto.
Obsoleto.

Inicializa uma nova instância da Uri classe com o URI especificado, com controlo explícito de escape de caracteres.

Uri(String, UriCreationOptions)

Inicializa uma nova instância da Uri classe com o URI especificado e outros UriCreationOptions.

Uri(String, UriKind)

Inicializa uma nova instância da Uri classe com o URI especificado. Este construtor permite-lhe especificar se a cadeia de URI é um URI relativo, URI absoluto ou indeterminado.

Uri(Uri, String)

Inicializa uma nova instância da Uri classe com base no URI base especificado e na cadeia de URI relativa.

Uri(Uri, Uri)

Inicializa uma nova instância da Uri classe com base na combinação de uma instância base Uri especificada e uma instância relativa Uri .

Uri(Uri, String, Boolean)
Obsoleto.
Obsoleto.
Obsoleto.
Obsoleto.

Inicializa uma nova instância da Uri classe com base especificada e URIs relativas, com controlo explícito do escape de caracteres.

Uri(String)

Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs

Inicializa uma nova instância da Uri classe com o URI especificado.

public:
 Uri(System::String ^ uriString);
public Uri(string uriString);
new Uri : string -> Uri
Public Sub New (uriString As String)

Parâmetros

uriString
String

Uma cadeia que identifica o recurso a ser representado pela Uri instância.

Exceções

uriString é null.

Nota: No .NET para Windows aplicações da Store ou na Portable Class Library, apanhe a exceção da classe base, FormatException, em vez disso.

uriString está vazio.

-ou-

O esquema especificado em uriString não está corretamente formado. Consulte CheckSchemeName(String).

-ou-

uriString contém demasiadas barras.

-ou-

A palavra-passe, nome do anfitrião, nome do ficheiro ou nome de utilizador especificados não uriString são válidos.

-ou-

O nome do host ou autoridade especificado em uriString é terminado por barras adicionais.

-ou-

O número de porta especificado em uriString não é válido ou não pode ser analisado.

-ou-

O comprimento de uriString excede 65519 caracteres (.NET apenas 9 e versões anteriores).

-ou-

O comprimento do esquema especificado em uriString excede 1023 caracteres.

-ou-

Existe uma sequência de caracteres inválida em uriString.

-ou-

O caminho MS-DOS especificado em uriString não começa por c:\\.

Exemplos

O exemplo seguinte cria uma Uri instância com o URI http://www.contoso.com/.

Uri myUri = new Uri("http://www.contoso.com/");
let myUri = Uri "http://www.contoso.com/"
Dim myUri As New Uri("http://www.contoso.com/")

Observações

Este construtor cria uma Uri instância a partir de uma cadeia URI. Analisa o URI, coloca-o em formato canónico e faz quaisquer codificações de escape necessárias.

Este construtor não garante que o Uri se refere a um recurso acessível.

Se o uriString representa um endereço IPv6, deve estar incluído entre parênteses, por exemplo, "http://[2607:f8b0:400d:c06::69]".

Este construtor assume que o string parâmetro faz referência a um URI absoluto e é equivalente a chamar o Uri construtor com UriKind o conjunto de Absolute. Se o string parâmetro passado ao construtor for um URI relativo, este construtor lança um UriFormatException.

Aplica-se a

Uri(SerializationInfo, StreamingContext)

Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs

Atenção

This API supports obsolete formatter-based serialization. It should not be called or extended by application code.

Inicializa uma nova instância da Uri classe a partir das instâncias especificadas das SerializationInfo classes e StreamingContext .

protected:
 Uri(System::Runtime::Serialization::SerializationInfo ^ serializationInfo, System::Runtime::Serialization::StreamingContext streamingContext);
[System.Obsolete("This API supports obsolete formatter-based serialization. It should not be called or extended by application code.", DiagnosticId="SYSLIB0051", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
protected Uri(System.Runtime.Serialization.SerializationInfo serializationInfo, System.Runtime.Serialization.StreamingContext streamingContext);
protected Uri(System.Runtime.Serialization.SerializationInfo serializationInfo, System.Runtime.Serialization.StreamingContext streamingContext);
[<System.Obsolete("This API supports obsolete formatter-based serialization. It should not be called or extended by application code.", DiagnosticId="SYSLIB0051", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
new Uri : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> Uri
new Uri : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> Uri
Protected Sub New (serializationInfo As SerializationInfo, streamingContext As StreamingContext)

Parâmetros

serializationInfo
SerializationInfo

A informação necessária para serializar a nova Uri instância.

streamingContext
StreamingContext

A origem do fluxo serializado associado à nova Uri instância.

Atributos

Exceções

O serializationInfo parâmetro contém um null URI.

O serializationInfo parâmetro contém um URI que está vazio.

-ou-

O esquema especificado não está corretamente formulado. Consulte CheckSchemeName(String).

-ou-

O URI contém demasiadas barras.

-ou-

A palavra-passe, nome do host, nome do ficheiro ou nome de utilizador especificados no URI não são válidos.

-ou-

O nome do host ou autoridade especificado no URI é terminado por barras adicionais.

-ou-

O número de porta especificado no URI não é válido ou não pode ser analisado.

-ou-

O comprimento do URI excede 65519 caracteres (apenas .NET 9 e versões anteriores).

-ou-

O comprimento do esquema especificado no URI excede 1023 caracteres.

-ou-

Existe uma sequência de caracteres inválida no URI.

-ou-

O caminho MS-DOS especificado no URI não começa por c:\\.

Observações

Este construtor implementa a ISerializable interface para a Uri classe.

Ver também

Aplica-se a

Uri(String, Boolean)

Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs

Atenção

This constructor has been deprecated; the dontEscape parameter is always false. Use Uri(string) instead.

Atenção

This constructor has been deprecated. Use Uri(string) instead.

Atenção

The constructor has been deprecated. Please use new Uri(string). The dontEscape parameter is deprecated and is always false. https://go.microsoft.com/fwlink/?linkid=14202

Atenção

The constructor has been deprecated. Please use new Uri(string). The dontEscape parameter is deprecated and is always false. http://go.microsoft.com/fwlink/?linkid=14202

Inicializa uma nova instância da Uri classe com o URI especificado, com controlo explícito de escape de caracteres.

public:
 Uri(System::String ^ uriString, bool dontEscape);
[System.Obsolete("This constructor has been deprecated; the dontEscape parameter is always false. Use Uri(string) instead.")]
public Uri(string uriString, bool dontEscape);
[System.Obsolete("This constructor has been deprecated. Use Uri(string) instead.")]
public Uri(string uriString, bool dontEscape);
[System.Obsolete("The constructor has been deprecated. Please use new Uri(string). The dontEscape parameter is deprecated and is always false. https://go.microsoft.com/fwlink/?linkid=14202")]
public Uri(string uriString, bool dontEscape);
[System.Obsolete("The constructor has been deprecated. Please use new Uri(string). The dontEscape parameter is deprecated and is always false. http://go.microsoft.com/fwlink/?linkid=14202")]
public Uri(string uriString, bool dontEscape);
public Uri(string uriString, bool dontEscape);
[<System.Obsolete("This constructor has been deprecated; the dontEscape parameter is always false. Use Uri(string) instead.")>]
new Uri : string * bool -> Uri
[<System.Obsolete("This constructor has been deprecated. Use Uri(string) instead.")>]
new Uri : string * bool -> Uri
[<System.Obsolete("The constructor has been deprecated. Please use new Uri(string). The dontEscape parameter is deprecated and is always false. https://go.microsoft.com/fwlink/?linkid=14202")>]
new Uri : string * bool -> Uri
[<System.Obsolete("The constructor has been deprecated. Please use new Uri(string). The dontEscape parameter is deprecated and is always false. http://go.microsoft.com/fwlink/?linkid=14202")>]
new Uri : string * bool -> Uri
new Uri : string * bool -> Uri
Public Sub New (uriString As String, dontEscape As Boolean)

Parâmetros

uriString
String

Uma cadeia que identifica o recurso a ser representado pela Uri instância. Note que um endereço IPv6 em forma de string deve ser incluído entre parênteses. Por exemplo, "http://[2607:f8b0:400d:c06::69]".

dontEscape
Boolean

true se uriString for completamente escapado; caso contrário, false.

Atributos

Exceções

uriString é null.

uriString é vazio ou contém apenas espaços.

-ou-

O esquema especificado em uriString não é válido.

-ou-

uriString contém demasiadas barras.

-ou-

A palavra-passe, nome do anfitrião, nome do ficheiro ou nome de utilizador especificados não uriString são válidos.

-ou-

O nome do host ou autoridade especificado em uriString é terminado por barras adicionais.

-ou-

O número de porta especificado em uriString não é válido ou não pode ser analisado.

-ou-

O comprimento de uriString excede 65519 caracteres (.NET apenas 9 e versões anteriores).

-ou-

O comprimento do esquema especificado em uriString excede 1023 caracteres.

-ou-

Existe uma sequência de caracteres inválida em uriString.

-ou-

O caminho MS-DOS especificado em uriString não começa por c:\\.

Observações

Este construtor cria uma Uri instância a partir de uma cadeia URI. Ele analisa o URI e coloca-o no formato canónico.

O dontEscape parâmetro controla se caracteres reservados são convertidos em sequências de escape. Este parâmetro deve ser definido apenas true se tiver a certeza de que todos os caracteres reservados no URI foram escapados. Definir o valor para true um URI que não foi completamente escapado pode causar comportamentos inesperados. É fortemente recomendado que defina sempre este parâmetro para false.

Se dontEscape for definido como false, o construtor escapa de quaisquer caracteres reservados verificando que todas as ocorrências de percentagem (%) são seguidas por uma sequência de escape válida. Se a sequência de caracteres após uma percentagem não for válida, a percentagem é substituída por %25.

Este construtor não garante que o Uri se refere a um recurso acessível.

Aplica-se a

Uri(String, UriCreationOptions)

Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs

Inicializa uma nova instância da Uri classe com o URI especificado e outros UriCreationOptions.

public:
 Uri(System::String ^ uriString, UriCreationOptions % creationOptions);
public Uri(string uriString, in UriCreationOptions creationOptions);
new Uri : string * UriCreationOptions -> Uri
Public Sub New (uriString As String, ByRef creationOptions As UriCreationOptions)

Parâmetros

uriString
String

Uma cadeia que identifica o recurso a ser representado pela Uri instância.

creationOptions
UriCreationOptions

Opções que controlam como é Uri criado e se comporta.

Aplica-se a

Uri(String, UriKind)

Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs

Inicializa uma nova instância da Uri classe com o URI especificado. Este construtor permite-lhe especificar se a cadeia de URI é um URI relativo, URI absoluto ou indeterminado.

public:
 Uri(System::String ^ uriString, UriKind uriKind);
public Uri(string uriString, UriKind uriKind);
new Uri : string * UriKind -> Uri
Public Sub New (uriString As String, uriKind As UriKind)

Parâmetros

uriString
String

Uma cadeia que identifica o recurso a ser representado pela Uri instância.

uriKind
UriKind

Especifica se a cadeia URI é um URI relativo, URI absoluto ou indeterminado.

Exceções

uriKind é inválido.

uriString é null.

Nota: No .NET para Windows aplicações da Store ou na Portable Class Library, apanhe a exceção da classe base, FormatException, em vez disso.

uriString contém um URI relativo e uriKind é Absolute.

ou

uriString contém um URI absoluto e uriKind é Relative.

ou

uriString está vazio.

-ou-

O esquema especificado em uriString não está corretamente formado. Consulte CheckSchemeName(String).

-ou-

uriString contém demasiadas barras.

-ou-

A palavra-passe, nome do anfitrião, nome do ficheiro ou nome de utilizador especificados não uriString são válidos.

-ou-

O nome do host ou autoridade especificado em uriString é terminado por barras adicionais.

-ou-

O número de porta especificado em uriString não é válido ou não pode ser analisado.

-ou-

O comprimento de uriString excede 65519 caracteres (.NET apenas 9 e versões anteriores).

-ou-

O comprimento do esquema especificado em uriString excede 1023 caracteres.

-ou-

Existe uma sequência de caracteres inválida em uriString.

-ou-

O caminho MS-DOS especificado em uriString não começa por c:\\.

Observações

Os URIs relativos e absolutos têm restrições diferentes quanto ao seu formato. Por exemplo, um URI relativo não requer um esquema ou uma autoridade. O valor que especifica em uriKind deve corresponder ao tipo de URI transmitido em uriString. No entanto, se RelativeOrAbsolute for especificado, a cadeia URI pode ser relativa ou absoluta.

Para uriString, um endereço IPv6 em forma de string deve ser incluído entre parênteses, por exemplo, "http://[2607:f8b0:400d:c06::69]".

Aplica-se a

Uri(Uri, String)

Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs

Inicializa uma nova instância da Uri classe com base no URI base especificado e na cadeia de URI relativa.

public:
 Uri(Uri ^ baseUri, System::String ^ relativeUri);
public Uri(Uri baseUri, string relativeUri);
public Uri(Uri baseUri, string? relativeUri);
new Uri : Uri * string -> Uri
Public Sub New (baseUri As Uri, relativeUri As String)

Parâmetros

baseUri
Uri

O URI de base.

relativeUri
String

O URI relativo para adicionar ao URI base.

Exceções

baseUri é null.

baseUri não é um caso absoluto Uri .

O URI formado combinando baseUri e relativeUri é vazio ou contém apenas espaços.

-ou-

O esquema especificado no URI formado pela combinação baseUri e relativeUri não é válido.

-ou-

O URI forma-se ao combinar baseUri e relativeUri contém barras a mais.

-ou-

A palavra-passe, nome do anfitrião, nome do ficheiro ou nome de utilizador especificados no URI formado pela combinação baseUri e relativeUri não são válidos.

-ou-

O nome do host ou autoridade especificado no URI é formado pela combinação baseUri e relativeUri é terminado por barras adicionais.

-ou-

O número de porta especificado no URI formado pela combinação baseUri não relativeUri é válido ou não pode ser analisado.

-ou-

O comprimento do URI formado pela combinação de baseUri e relativeUri excede 65519 caracteres (.NET 9 e versões anteriores apenas).

-ou-

O comprimento do esquema especificado no URI formado pela combinação baseUri excede relativeUri 1023 caracteres.

-ou-

Existe uma sequência de caracteres inválida no URI formada combinando baseUri e relativeUri.

-ou-

O caminho MS-DOS especificado em baseUri não começa por c:\\.

Exemplos

O exemplo seguinte cria uma nova instância da Uri classe combinando os URIs http://www.contoso.com relativos e catalog/shownew.htm para formar o URI http://www.contoso.com/catalog/shownew.htmabsoluto .

Uri baseUri = new Uri("http://www.contoso.com");
 Uri myUri = new Uri(baseUri, "catalog/shownew.htm");

Console.WriteLine(myUri.ToString());
let baseUri = Uri "http://www.contoso.com"
let myUri = Uri(baseUri, "catalog/shownew.htm")

printfn $"{myUri}"
Dim baseUri As New Uri("http://www.contoso.com")
Dim myUri As New Uri(baseUri, "catalog/shownew.htm")

Console.WriteLine(myUri.ToString())

Observações

Este construtor cria uma Uri instância combinando os baseUri e os relativeUri. Se relativeUri for um URI absoluto (contendo um esquema, nome do host e, opcionalmente, um número de porta), a Uri instância é criada usando apenas relativeUri.

Se o baseUri tiver partes relativas (como /api), então a parte relativa deve ser terminada com uma barra, (como /api/), se a parte relativa de baseUri for preservada no construído Uri.

Além disso, se o relativeUri começar com uma barra, então substituirá qualquer parte relativa do baseUri

Este construtor não garante que o Uri se refere a um recurso acessível.

Aplica-se a

Uri(Uri, Uri)

Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs

Inicializa uma nova instância da Uri classe com base na combinação de uma instância base Uri especificada e uma instância relativa Uri .

public:
 Uri(Uri ^ baseUri, Uri ^ relativeUri);
public Uri(Uri baseUri, Uri relativeUri);
new Uri : Uri * Uri -> Uri
Public Sub New (baseUri As Uri, relativeUri As Uri)

Parâmetros

baseUri
Uri

Um absoluto Uri que é a base para a nova Uri instância.

relativeUri
Uri

Uma instância relativa Uri que é combinada com baseUri.

Exceções

baseUri não é um caso absoluto Uri .

baseUri é null.

baseUri não é um caso absoluto Uri .

Nota: No .NET para Windows aplicações da Store ou na Portable Class Library, apanhe a exceção da classe base, FormatException, em vez disso.

O URI formado combinando baseUri e relativeUri é vazio ou contém apenas espaços.

-ou-

O esquema especificado no URI formado pela combinação baseUri e relativeUri não é válido.

-ou-

O URI forma-se ao combinar baseUri e relativeUri contém barras a mais.

-ou-

A palavra-passe, nome do anfitrião, nome do ficheiro ou nome de utilizador especificados no URI formado pela combinação baseUri e relativeUri não são válidos.

-ou-

O nome do host ou autoridade especificado no URI é formado pela combinação baseUri e relativeUri é terminado por barras adicionais.

-ou-

O número de porta especificado no URI formado pela combinação baseUri não relativeUri é válido ou não pode ser analisado.

-ou-

O comprimento do URI formado pela combinação de baseUri e relativeUri excede 65519 caracteres (.NET 9 e versões anteriores apenas).

-ou-

O comprimento do esquema especificado no URI formado pela combinação baseUri excede relativeUri 1023 caracteres.

-ou-

Existe uma sequência de caracteres inválida no URI formada combinando baseUri e relativeUri.

-ou-

O caminho MS-DOS especificado em baseUri não começa por c:\\.

Exemplos

Este exemplo cria uma instância absoluta Uri , absoluteUri, e uma instância relativa Uri , relativeUri. Uma nova Uri instância, combinedUri, é então criada a partir destas duas instâncias.

// Create an absolute Uri from a string.
Uri absoluteUri = new Uri("http://www.contoso.com/");

// Create a relative Uri from a string.  allowRelative = true to allow for
// creating a relative Uri.
Uri relativeUri = new Uri("/catalog/shownew.htm?date=today", UriKind.Relative);

// Check whether the new Uri is absolute or relative.
if (!relativeUri.IsAbsoluteUri)
    Console.WriteLine("{0} is a relative Uri.", relativeUri);

// Create a new Uri from an absolute Uri and a relative Uri.
Uri combinedUri = new Uri(absoluteUri, relativeUri);
Console.WriteLine(combinedUri.AbsoluteUri);
// Create an absolute Uri from a string.
let absoluteUri = Uri "http://www.contoso.com/"

// Create a relative Uri from a string.  allowRelative = true to allow for
// creating a relative Uri.
let relativeUri = Uri("/catalog/shownew.htm?date=today", UriKind.Relative)

// Check whether the new Uri is absolute or relative.
if not relativeUri.IsAbsoluteUri then
    printfn $"{relativeUri} is a relative Uri."

// Create a new Uri from an absolute Uri and a relative Uri.
let combinedUri = Uri(absoluteUri, relativeUri)
printfn $"{combinedUri.AbsoluteUri}"
    ' Create an absolute Uri from a string.
    Dim absoluteUri As New Uri("http://www.contoso.com/")
    
    ' Create a relative Uri from a string.  allowRelative = true to allow for 
    ' creating a relative Uri.
    Dim relativeUri As New Uri("/catalog/shownew.htm?date=today")
    
    ' Check whether the new Uri is absolute or relative.
    If Not relativeUri.IsAbsoluteUri Then
        Console.WriteLine("{0} is a relative Uri.", relativeUri)
    End If 
    ' Create a new Uri from an absolute Uri and a relative Uri.
    Dim combinedUri As New Uri(absoluteUri, relativeUri)
    Console.WriteLine(combinedUri.AbsoluteUri)

End Sub

Observações

Este construtor cria uma nova Uri instância combinando uma instância absoluta Uri , baseUri, com uma instância relativa Uri , relativeUri. Se relativeUri for uma instância absoluta Uri (contendo um esquema, nome do host e, opcionalmente, um número de porta), a Uri instância é criada usando apenas relativeUri.

Se o baseUri tiver partes relativas (como /api), então a parte relativa deve ser terminada com uma barra, (como /api/), se a parte relativa de baseUri for preservada no construído Uri.

Além disso, se o relativeUri começar com uma barra, então substituirá qualquer parte relativa do baseUri.

Este construtor não garante que o Uri se refere a um recurso acessível.

Aplica-se a

Uri(Uri, String, Boolean)

Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs
Origem:
Uri.cs

Atenção

This constructor has been deprecated; the dontEscape parameter is always false. Use Uri(Uri, string) instead.

Atenção

This constructor has been deprecated. Use Uri(Uri, string) instead.

Atenção

The constructor has been deprecated. Please new Uri(Uri, string). The dontEscape parameter is deprecated and is always false. https://go.microsoft.com/fwlink/?linkid=14202

Atenção

The constructor has been deprecated. Please new Uri(Uri, string). The dontEscape parameter is deprecated and is always false. http://go.microsoft.com/fwlink/?linkid=14202

Inicializa uma nova instância da Uri classe com base especificada e URIs relativas, com controlo explícito do escape de caracteres.

public:
 Uri(Uri ^ baseUri, System::String ^ relativeUri, bool dontEscape);
[System.Obsolete("This constructor has been deprecated; the dontEscape parameter is always false. Use Uri(Uri, string) instead.")]
public Uri(Uri baseUri, string? relativeUri, bool dontEscape);
[System.Obsolete("This constructor has been deprecated. Use Uri(Uri, string) instead.")]
public Uri(Uri baseUri, string? relativeUri, bool dontEscape);
[System.Obsolete("The constructor has been deprecated. Please new Uri(Uri, string). The dontEscape parameter is deprecated and is always false. https://go.microsoft.com/fwlink/?linkid=14202")]
public Uri(Uri baseUri, string? relativeUri, bool dontEscape);
[System.Obsolete("The constructor has been deprecated. Please new Uri(Uri, string). The dontEscape parameter is deprecated and is always false. http://go.microsoft.com/fwlink/?linkid=14202")]
public Uri(Uri baseUri, string relativeUri, bool dontEscape);
public Uri(Uri baseUri, string relativeUri, bool dontEscape);
[System.Obsolete("The constructor has been deprecated. Please new Uri(Uri, string). The dontEscape parameter is deprecated and is always false. https://go.microsoft.com/fwlink/?linkid=14202")]
public Uri(Uri baseUri, string relativeUri, bool dontEscape);
[<System.Obsolete("This constructor has been deprecated; the dontEscape parameter is always false. Use Uri(Uri, string) instead.")>]
new Uri : Uri * string * bool -> Uri
[<System.Obsolete("This constructor has been deprecated. Use Uri(Uri, string) instead.")>]
new Uri : Uri * string * bool -> Uri
[<System.Obsolete("The constructor has been deprecated. Please new Uri(Uri, string). The dontEscape parameter is deprecated and is always false. https://go.microsoft.com/fwlink/?linkid=14202")>]
new Uri : Uri * string * bool -> Uri
[<System.Obsolete("The constructor has been deprecated. Please new Uri(Uri, string). The dontEscape parameter is deprecated and is always false. http://go.microsoft.com/fwlink/?linkid=14202")>]
new Uri : Uri * string * bool -> Uri
new Uri : Uri * string * bool -> Uri
Public Sub New (baseUri As Uri, relativeUri As String, dontEscape As Boolean)

Parâmetros

baseUri
Uri

O URI de base.

relativeUri
String

O URI relativo para adicionar ao URI base.

dontEscape
Boolean

true se baseUri e relativeUri estiverem completamente escapados; caso contrário, false.

Atributos

Exceções

baseUri é null.

baseUri não é um caso absoluto Uri .

O URI formado combinando baseUri e relativeUri é vazio ou contém apenas espaços.

-ou-

O esquema especificado no URI formado pela combinação baseUri e relativeUri não é válido.

-ou-

O URI forma-se ao combinar baseUri e relativeUri contém barras a mais.

-ou-

A palavra-passe, nome do anfitrião, nome do ficheiro ou nome de utilizador especificados no URI formado pela combinação baseUri e relativeUri não são válidos.

-ou-

O nome do host ou autoridade especificado no URI é formado pela combinação baseUri e relativeUri é terminado por barras adicionais.

-ou-

O número de porta especificado no URI formado pela combinação baseUri não relativeUri é válido ou não pode ser analisado.

-ou-

O comprimento do URI formado pela combinação de baseUri e relativeUri excede 65519 caracteres (.NET 9 e versões anteriores apenas).

-ou-

O comprimento do esquema especificado no URI formado pela combinação baseUri excede relativeUri 1023 caracteres.

-ou-

Existe uma sequência de caracteres inválida no URI formada combinando baseUri e relativeUri.

-ou-

O caminho MS-DOS especificado em baseUri não começa por c:\\.

Observações

Este construtor cria uma Uri instância combinando baseUri e relativeUri. Se o URI passado relativeUri for um URI absoluto (contendo um esquema, nome do host e, opcionalmente, um número de porta), a Uri instância é criada usando apenas relativeUri.

O dontEscape parâmetro controla se caracteres reservados são convertidos em sequências de escape. Este parâmetro deve ser definido apenas true se tiver a certeza de que todos os caracteres reservados no URI foram escapados. Definir o valor para true um URI que não foi completamente escapado pode causar comportamentos inesperados. É fortemente recomendado que defina sempre este parâmetro para false. Se dontEscape for definido como false, o construtor escapa de quaisquer caracteres reservados verificando que todas as ocorrências de percentagem (%) são seguidas por uma sequência de escape válida. Se a sequência de caracteres após uma percentagem não for válida, a percentagem é substituída por %25.

Este construtor não garante que o Uri se refere a um recurso acessível.

Notas para Chamadores

Por questões de segurança, a sua aplicação não deve chamar este construtor com cadeias URI de fontes não confiáveis e com dontEscape definido para true. Alternativamente, pode verificar a validade de uma cadeia URI chamando o IsWellFormedOriginalString() método antes de chamar este construtor.

Aplica-se a