Uri Construtores
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
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
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
- 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
- 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
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
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.