Uri Constructores
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Inicializa una nueva instancia de la clase Uri.
Sobrecargas
Uri(String) |
Inicializa una nueva instancia de la clase Uri con el URI especificado. |
Uri(SerializationInfo, StreamingContext) |
Obsoletos.
Inicializa una nueva instancia de la clase Uri a partir de las instancias especificadas de las clases SerializationInfo y StreamingContext especificadas. |
Uri(String, Boolean) |
Obsoletos.
Obsoletos.
Obsoletos.
Inicializa una nueva instancia de la clase Uri con el URI especificado, con control explícito de escape de caracteres. |
Uri(String, UriCreationOptions) |
Inicializa una nueva instancia de la clase Uri con el URI especificado y UriCreationOptionsadicional . |
Uri(String, UriKind) |
Inicializa una nueva instancia de la clase Uri con el URI especificado. Este constructor permite especificar si la cadena de URI es un URI relativo, un URI absoluto o está indeterminado. |
Uri(Uri, String) |
Inicializa una nueva instancia de la clase Uri en función del URI base y la cadena de URI relativa especificadas. |
Uri(Uri, Uri) |
Inicializa una nueva instancia de la clase Uri en función de la combinación de una instancia de Uri base especificada y una instancia de Uri relativa. |
Uri(Uri, String, Boolean) |
Obsoletos.
Obsoletos.
Obsoletos.
Inicializa una nueva instancia de la clase Uri en función de los URI relativos y base especificados, con control explícito de escape de caracteres. |
Uri(String)
- Source:
- Uri.cs
- Source:
- Uri.cs
- Source:
- Uri.cs
Inicializa una nueva instancia de la clase Uri con el 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
Cadena que identifica el recurso que se va a representar mediante la instancia de Uri. Tenga en cuenta que una dirección IPv6 en forma de cadena debe incluirse entre corchetes. Por ejemplo, "http://[2607:f8b0:400d:c06::69]".
Excepciones
uriString
es null
.
Nota: En el .NET para aplicaciones de la Tienda Windows o la biblioteca de clases portable de , capture la excepción de clase base, FormatException, en su lugar.
uriString
está vacío.
-o-
El esquema especificado en uriString
no se forma correctamente. Consulte CheckSchemeName(String).
-o-
uriString
contiene demasiadas barras diagonales.
-o-
La contraseña especificada en uriString
no es válida.
-o-
El nombre de host especificado en uriString
no es válido.
-o-
El nombre de archivo especificado en uriString
no es válido.
-o-
El nombre de usuario especificado en uriString
no es válido.
-o-
El nombre de host o autoridad especificado en uriString
no se puede terminar con barras diagonales inversas.
-o-
El número de puerto especificado en uriString
no es válido o no se puede analizar.
-o-
La longitud de uriString
supera los 65519 caracteres.
-o-
La longitud del esquema especificado en uriString
supera los 1023 caracteres.
-o-
Hay una secuencia de caracteres no válida en uriString
.
-o-
La ruta de acceso MS-DOS especificada en uriString
debe comenzar con c:\\.
Ejemplos
En el ejemplo siguiente se crea una instancia de Uri con el URI http://www.contoso.com/
.
Uri^ baseUri = gcnew 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/")
Comentarios
Este constructor crea una instancia de Uri a partir de una cadena de URI. Analiza el URI, lo coloca en formato canónico y hace que las codificaciones de escape necesarias.
Este constructor no garantiza que el Uri haga referencia a un recurso accesible.
Este constructor supone que el parámetro string
hace referencia a un URI absoluto y es equivalente a llamar al constructor de Uri con UriKind establecido en Absolute. Si el parámetro string
pasado al constructor es un URI relativo, este constructor iniciará un UriFormatException.
Se aplica a
Uri(SerializationInfo, StreamingContext)
- Source:
- Uri.cs
- Source:
- Uri.cs
- Source:
- Uri.cs
Precaución
This API supports obsolete formatter-based serialization. It should not be called or extended by application code.
Inicializa una nueva instancia de la clase Uri a partir de las instancias especificadas de las clases SerializationInfo y StreamingContext especificadas.
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}")]
protected Uri (System.Runtime.Serialization.SerializationInfo serializationInfo, System.Runtime.Serialization.StreamingContext streamingContext);
new Uri : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> Uri
[<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
Protected Sub New (serializationInfo As SerializationInfo, streamingContext As StreamingContext)
Parámetros
- serializationInfo
- SerializationInfo
Instancia de la clase SerializationInfo que contiene la información necesaria para serializar la nueva instancia de Uri.
- streamingContext
- StreamingContext
Instancia de la clase StreamingContext que contiene el origen de la secuencia serializada asociada a la nueva instancia de Uri.
- Atributos
Excepciones
El parámetro serializationInfo
contiene un URI de null
.
El parámetro serializationInfo
contiene un URI que está vacío.
-o-
El esquema especificado no tiene el formato correcto. Consulte CheckSchemeName(String).
-o-
El URI contiene demasiadas barras diagonales.
-o-
La contraseña especificada en el URI no es válida.
-o-
El nombre de host especificado en el URI no es válido.
-o-
El nombre de archivo especificado en el URI no es válido.
-o-
El nombre de usuario especificado en el URI no es válido.
-o-
El nombre de host o autoridad especificado en el URI no se puede terminar con barras diagonales inversas.
-o-
El número de puerto especificado en el URI no es válido o no se puede analizar.
-o-
La longitud del URI supera los 65519 caracteres.
-o-
La longitud del esquema especificado en el URI supera los 1023 caracteres.
-o-
Hay una secuencia de caracteres no válida en el URI.
-o-
La ruta de acceso MS-DOS especificada en el URI debe comenzar con c:\\.
Comentarios
Este constructor implementa la interfaz ISerializable para la clase Uri.
Consulte también
Se aplica a
Uri(String, Boolean)
- Source:
- Uri.cs
- Source:
- Uri.cs
- Source:
- Uri.cs
Precaución
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
Precaución
This constructor has been deprecated; the dontEscape parameter is always false. Use Uri(string) instead.
Precaución
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 una nueva instancia de la clase Uri con el URI especificado, con control explícito de escape de caracteres.
public:
Uri(System::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("This constructor has been deprecated; the dontEscape parameter is always false. 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. http://go.microsoft.com/fwlink/?linkid=14202")]
public Uri (string uriString, bool dontEscape);
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")>]
new Uri : string * bool -> Uri
[<System.Obsolete("This constructor has been deprecated; the dontEscape parameter is always false. 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. 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
Cadena que identifica el recurso que se va a representar mediante la instancia de Uri. Tenga en cuenta que una dirección IPv6 en forma de cadena debe incluirse entre corchetes. Por ejemplo, "http://[2607:f8b0:400d:c06::69]".
- dontEscape
- Boolean
true
si uriString
es completamente de escape; de lo contrario, false
.
- Atributos
Excepciones
uriString
es null
.
uriString
está vacío o solo contiene espacios.
-o-
El esquema especificado en uriString
no es válido.
-o-
uriString
contiene demasiadas barras diagonales.
-o-
La contraseña especificada en uriString
no es válida.
-o-
El nombre de host especificado en uriString
no es válido.
-o-
El nombre de archivo especificado en uriString
no es válido.
-o-
El nombre de usuario especificado en uriString
no es válido.
-o-
El nombre de host o autoridad especificado en uriString
no se puede terminar con barras diagonales inversas.
-o-
El número de puerto especificado en uriString
no es válido o no se puede analizar.
-o-
La longitud de uriString
supera los 65519 caracteres.
-o-
La longitud del esquema especificado en uriString
supera los 1023 caracteres.
-o-
Hay una secuencia de caracteres no válida en uriString
.
-o-
La ruta de acceso MS-DOS especificada en uriString
debe comenzar con c:\\.
Ejemplos
En el ejemplo siguiente se crea una instancia de Uri para el URI http://www.contoso.com/Hello%20World.htm
. Dado que el URI contenido está completamente con escape y está en forma canónica, el parámetro dontEscape
se puede establecer en true
.
Uri^ myUri = gcnew Uri( "http://www.contoso.com/Hello%20World.htm",true );
Uri myUri = new Uri("http://www.contoso.com/Hello%20World.htm", true);
let myUri = Uri("http://www.contoso.com/Hello%20World.htm", true)
Dim myUri As New Uri("http://www.contoso.com/Hello%20World.htm", True)
Comentarios
Este constructor crea una instancia de Uri a partir de una cadena de URI. Analiza el URI y lo coloca en formato canónico.
El parámetro dontEscape
controla si los caracteres reservados se traducen en secuencias de escape. Este parámetro debe establecerse en true
solo si está seguro de que todos los caracteres reservados del URI se han escapado. Establecer el valor en true
para un URI que no se ha escapado completamente puede provocar un comportamiento inesperado. Se recomienda encarecidamente establecer siempre este parámetro en false
.
Si dontEscape
se establece en false
, el constructor escapa a los caracteres reservados comprobando que todas las apariciones del porcentaje (%) van seguidas de una secuencia de escape válida. Si la secuencia de caracteres que sigue a un porcentaje no es válida, el porcentaje se reemplaza por %25.
Este constructor no garantiza que el Uri haga referencia a un recurso accesible.
Se aplica a
Uri(String, UriCreationOptions)
- Source:
- Uri.cs
- Source:
- Uri.cs
- Source:
- Uri.cs
Inicializa una nueva instancia de la clase Uri con el URI especificado y UriCreationOptionsadicional .
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
Cadena que identifica el recurso que se va a representar mediante la instancia de Uri.
- creationOptions
- UriCreationOptions
Opciones que controlan cómo se crea y se comporta el Uri.
Se aplica a
Uri(String, UriKind)
- Source:
- Uri.cs
- Source:
- Uri.cs
- Source:
- Uri.cs
Inicializa una nueva instancia de la clase Uri con el URI especificado. Este constructor permite especificar si la cadena de URI es un URI relativo, un URI absoluto o está 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
Cadena que identifica el recurso que se va a representar mediante la instancia de Uri. Tenga en cuenta que una dirección IPv6 en forma de cadena debe incluirse entre corchetes. Por ejemplo, "http://[2607:f8b0:400d:c06::69]".
- uriKind
- UriKind
Especifica si la cadena de URI es un URI relativo, un URI absoluto o es indeterminado.
Excepciones
uriKind
no es válido.
uriString
es null
.
Nota: En el .NET para aplicaciones de la Tienda Windows o la biblioteca de clases portable de , capture la excepción de clase base, FormatException, en su lugar.
uriString
contiene un URI relativo y uriKind
es Absolute.
o
uriString
contiene un URI absoluto y uriKind
es Relative.
o
uriString
está vacío.
-o-
El esquema especificado en uriString
no se forma correctamente. Consulte CheckSchemeName(String).
-o-
uriString
contiene demasiadas barras diagonales.
-o-
La contraseña especificada en uriString
no es válida.
-o-
El nombre de host especificado en uriString
no es válido.
-o-
El nombre de archivo especificado en uriString
no es válido.
-o-
El nombre de usuario especificado en uriString
no es válido.
-o-
El nombre de host o autoridad especificado en uriString
no se puede terminar con barras diagonales inversas.
-o-
El número de puerto especificado en uriString
no es válido o no se puede analizar.
-o-
La longitud de uriString
supera los 65519 caracteres.
-o-
La longitud del esquema especificado en uriString
supera los 1023 caracteres.
-o-
Hay una secuencia de caracteres no válida en uriString
.
-o-
La ruta de acceso MS-DOS especificada en uriString
debe comenzar con c:\\.
Comentarios
Los URI relativos y absolutos tienen restricciones diferentes en su formato. Por ejemplo, un URI relativo no requiere un esquema ni una autoridad. El valor especificado en uriKind
debe coincidir con el tipo de URI pasado en uriString
. Sin embargo, si se especifica RelativeOrAbsolute, la cadena de URI puede ser relativa o absoluta.
Se aplica a
Uri(Uri, String)
- Source:
- Uri.cs
- Source:
- Uri.cs
- Source:
- Uri.cs
Inicializa una nueva instancia de la clase Uri en función del URI base y la cadena de URI relativa especificadas.
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
URI base.
- relativeUri
- String
URI relativo que se va a agregar al URI base.
Excepciones
baseUri
es null
.
baseUri
no es una instancia absoluta de Uri.
Nota: En el .NET para aplicaciones de la Tienda Windows o la biblioteca de clases portable de , capture la excepción de clase base, FormatException, en su lugar.
El URI formado mediante la combinación de baseUri
y relativeUri
está vacío o solo contiene espacios.
-o-
El esquema especificado en el URI formado mediante la combinación de baseUri
y relativeUri
no es válido.
-o-
El URI formado mediante la combinación de baseUri
y relativeUri
contiene demasiadas barras diagonales.
-o-
La contraseña especificada en el URI formado mediante la combinación de baseUri
y relativeUri
no es válida.
-o-
El nombre de host especificado en el URI formado mediante la combinación de baseUri
y relativeUri
no es válido.
-o-
El nombre de archivo especificado en el URI formado mediante la combinación de baseUri
y relativeUri
no es válido.
-o-
El nombre de usuario especificado en el URI formado mediante la combinación de baseUri
y relativeUri
no es válido.
-o-
El nombre de host o autoridad especificado en el URI formado mediante la combinación de baseUri
y relativeUri
no se puede terminar con barras diagonales inversas.
-o-
El número de puerto especificado en el URI formado mediante la combinación de baseUri
y relativeUri
no es válido o no se puede analizar.
-o-
La longitud del URI formado mediante la combinación de baseUri
y relativeUri
supera los 65519 caracteres.
-o-
La longitud del esquema especificado en el URI formado mediante la combinación de baseUri
y relativeUri
supera los 1023 caracteres.
-o-
Hay una secuencia de caracteres no válida en el URI formado mediante la combinación de baseUri
y relativeUri
.
-o-
La ruta de acceso MS-DOS especificada en baseUri
debe comenzar con c:\\.
Ejemplos
En el ejemplo siguiente se crea una nueva instancia de la clase Uri mediante la combinación de los URI relativos http://www.contoso.com
y catalog/shownew.htm
para formar el URI absoluto http://www.contoso.com/catalog/shownew.htm
.
Uri^ baseUri = gcnew Uri( "http://www.contoso.com" );
Uri^ myUri = gcnew Uri( baseUri, "catalog/shownew.htm" );
Console::WriteLine( myUri->ToString() );
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())
Comentarios
Este constructor crea una instancia de Uri combinando el baseUri
y el relativeUri
. Si relativeUri
es un URI absoluto (que contiene un esquema, un nombre de host y, opcionalmente, un número de puerto), la instancia de Uri se crea con solo relativeUri
.
Si el baseUri
tiene partes relativas (como /api
), la parte relativa debe terminarse con una barra diagonal (como /api/
), si la parte relativa de baseUri
debe conservarse en el Uriconstruido.
Además, si el relativeUri
comienza por una barra diagonal, reemplazará cualquier parte relativa del baseUri
Este constructor no garantiza que el Uri haga referencia a un recurso accesible.
Se aplica a
Uri(Uri, Uri)
- Source:
- Uri.cs
- Source:
- Uri.cs
- Source:
- 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
Excepciones
baseUri
no es una instancia absoluta de Uri.
baseUri
es null
.
baseUri
no es una instancia absoluta de Uri.
Nota: En el .NET para aplicaciones de la Tienda Windows o la biblioteca de clases portable de , capture la excepción de clase base, FormatException, en su lugar.
El URI formado mediante la combinación de baseUri
y relativeUri
está vacío o solo contiene espacios.
-o-
El esquema especificado en el URI formado mediante la combinación de baseUri
y relativeUri
no es válido.
-o-
El URI formado mediante la combinación de baseUri
y relativeUri
contiene demasiadas barras diagonales.
-o-
La contraseña especificada en el URI formado mediante la combinación de baseUri
y relativeUri
no es válida.
-o-
El nombre de host especificado en el URI formado mediante la combinación de baseUri
y relativeUri
no es válido.
-o-
El nombre de archivo especificado en el URI formado mediante la combinación de baseUri
y relativeUri
no es válido.
-o-
El nombre de usuario especificado en el URI formado mediante la combinación de baseUri
y relativeUri
no es válido.
-o-
El nombre de host o autoridad especificado en el URI formado mediante la combinación de baseUri
y relativeUri
no se puede terminar con barras diagonales inversas.
-o-
El número de puerto especificado en el URI formado mediante la combinación de baseUri
y relativeUri
no es válido o no se puede analizar.
-o-
La longitud del URI formado mediante la combinación de baseUri
y relativeUri
supera los 65519 caracteres.
-o-
La longitud del esquema especificado en el URI formado mediante la combinación de baseUri
y relativeUri
supera los 1023 caracteres.
-o-
Hay una secuencia de caracteres no válida en el URI formado mediante la combinación de baseUri
y relativeUri
.
-o-
La ruta de acceso MS-DOS especificada en baseUri
debe comenzar con c:\\.
Ejemplos
En este ejemplo se crea una instancia de Uri absoluta, absoluteUri
y una instancia de Uri relativa, relativeUri
. A continuación, se crea una nueva instancia de Uri, combinedUri
, a partir de estas dos instancias.
// Create an absolute Uri from a string.
String^ addressString1 = "http://www.contoso.com/";
String^ addressString2 = "catalog/shownew.htm?date=today";
Uri^ absoluteUri = gcnew Uri(addressString1);
// Create a relative Uri from a string. allowRelative = true to allow for
// creating a relative Uri.
Uri^ relativeUri = gcnew Uri(addressString2);
// 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 = gcnew Uri( absoluteUri,relativeUri );
Console::WriteLine( combinedUri->AbsoluteUri );
// 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
Comentarios
Este constructor crea una nueva instancia de Uri mediante la combinación de una instancia de Uri absoluta, baseUri
, con una instancia de Uri relativa, relativeUri
. Si relativeUri
es una instancia de Uri absoluta (que contiene un esquema, un nombre de host y, opcionalmente, un número de puerto), la instancia de Uri se crea con solo relativeUri
.
Si el baseUri
tiene partes relativas (como /api
), la parte relativa debe terminarse con una barra diagonal (como /api/
), si la parte relativa de baseUri
debe conservarse en el Uriconstruido.
Además, si el relativeUri
comienza por una barra diagonal, reemplazará cualquier parte relativa del baseUri
Este constructor no garantiza que el Uri haga referencia a un recurso accesible.
Se aplica a
Uri(Uri, String, Boolean)
- Source:
- Uri.cs
- Source:
- Uri.cs
- Source:
- Uri.cs
Precaución
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
Precaución
This constructor has been deprecated; the dontEscape parameter is always false. Use Uri(Uri, string) instead.
Precaución
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 una nueva instancia de la clase Uri en función de los URI relativos y base especificados, con control explícito de escape de caracteres.
public:
Uri(Uri ^ baseUri, System::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.")]
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("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("This constructor has been deprecated; the dontEscape parameter is always false. 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. 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
URI base.
- relativeUri
- String
URI relativo que se va a agregar al URI base.
- dontEscape
- Boolean
true
si baseUri
y relativeUri
son completamente escapes; de lo contrario, false
.
- Atributos
Excepciones
baseUri
es null
.
baseUri
no es una instancia absoluta de Uri.
El URI formado mediante la combinación de baseUri
y relativeUri
está vacío o solo contiene espacios.
-o-
El esquema especificado en el URI formado mediante la combinación de baseUri
y relativeUri
no es válido.
-o-
El URI formado mediante la combinación de baseUri
y relativeUri
contiene demasiadas barras diagonales.
-o-
La contraseña especificada en el URI formado mediante la combinación de baseUri
y relativeUri
no es válida.
-o-
El nombre de host especificado en el URI formado mediante la combinación de baseUri
y relativeUri
no es válido.
-o-
El nombre de archivo especificado en el URI formado mediante la combinación de baseUri
y relativeUri
no es válido.
-o-
El nombre de usuario especificado en el URI formado mediante la combinación de baseUri
y relativeUri
no es válido.
-o-
El nombre de host o autoridad especificado en el URI formado mediante la combinación de baseUri
y relativeUri
no se puede terminar con barras diagonales inversas.
-o-
El número de puerto especificado en el URI formado mediante la combinación de baseUri
y relativeUri
no es válido o no se puede analizar.
-o-
La longitud del URI formado mediante la combinación de baseUri
y relativeUri
supera los 65519 caracteres.
-o-
La longitud del esquema especificado en el URI formado mediante la combinación de baseUri
y relativeUri
supera los 1023 caracteres.
-o-
Hay una secuencia de caracteres no válida en el URI formado mediante la combinación de baseUri
y relativeUri
.
-o-
La ruta de acceso MS-DOS especificada en baseUri
debe comenzar con c:\\.
Ejemplos
En el ejemplo siguiente se crea una nueva instancia de la clase Uri mediante la combinación de los URI relativos http://www.contoso.com
y Hello%20World.htm
para formar un URI absoluto.
Uri^ baseUri = gcnew Uri( "http://www.contoso.com/" );
Uri^ myUri = gcnew Uri( baseUri,"Hello%20World.htm",false );
Uri baseUri = new Uri("http://www.contoso.com");
Uri myUri = new Uri(baseUri, "Hello%20World.htm",false);
let baseUri = Uri "http://www.contoso.com"
let myUri = Uri(baseUri, "Hello%20World.htm", false)
Dim baseUri As New Uri("http://www.contoso.com")
Dim myUri As New Uri(baseUri, "Hello%20World.htm", False)
Comentarios
Este constructor crea una instancia de Uri mediante la combinación de baseUri
y relativeUri
. Si el URI pasado en relativeUri
es un URI absoluto (que contiene un esquema, un nombre de host y, opcionalmente, un número de puerto), la instancia de Uri se crea con solo relativeUri
.
El parámetro dontEscape
controla si los caracteres reservados se traducen en secuencias de escape. Este parámetro debe establecerse en true
solo si está seguro de que todos los caracteres reservados del URI se han escapado. Establecer el valor en true
para un URI que no se ha escapado completamente puede provocar un comportamiento inesperado. Se recomienda encarecidamente establecer siempre este parámetro en false
. Si dontEscape
se establece en false
, el constructor escapa a los caracteres reservados comprobando que todas las apariciones del porcentaje (%) van seguidas de una secuencia de escape válida. Si la secuencia de caracteres que sigue a un porcentaje no es válida, el porcentaje se reemplaza por %25.
Este constructor no garantiza que el Uri haga referencia a un recurso accesible.
Notas a los autores de las llamadas
Debido a problemas de seguridad, la aplicación no debe llamar a este constructor con cadenas de URI de orígenes que no son de confianza y con dontEscape
establecido en true
. Como alternativa, puede comprobar si hay una cadena de URI válida llamando al método IsWellFormedOriginalString() antes de llamar a este constructor.