Uri Costruttori
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Inizializza una nuova istanza della classe Uri.
Overload
Uri(String) |
Inizializza una nuova istanza della classe Uri con l'URI specificato. |
Uri(SerializationInfo, StreamingContext) |
Obsoleti.
Inizializza una nuova istanza della classe Uri dalle istanze specificate delle classi SerializationInfo e StreamingContext. |
Uri(String, Boolean) |
Obsoleti.
Obsoleti.
Obsoleti.
Inizializza una nuova istanza della classe Uri con l'URI specificato, con il controllo esplicito dell'escape dei caratteri. |
Uri(String, UriCreationOptions) |
Inizializza una nuova istanza della classe Uri con l'URI specificato e altri UriCreationOptions. |
Uri(String, UriKind) |
Inizializza una nuova istanza della classe Uri con l'URI specificato. Questo costruttore consente di specificare se la stringa URI è un URI relativo, un URI assoluto o è indeterminato. |
Uri(Uri, String) |
Inizializza una nuova istanza della classe Uri in base all'URI di base e alla stringa URI relativa specificati. |
Uri(Uri, Uri) |
Inizializza una nuova istanza della classe Uri in base alla combinazione di un'istanza di base Uri specificata e di un'istanza di Uri relativa. |
Uri(Uri, String, Boolean) |
Obsoleti.
Obsoleti.
Obsoleti.
Inizializza una nuova istanza della classe Uri in base alla base e agli URI relativi specificati, con il controllo esplicito dell'escape dei caratteri. |
Uri(String)
- Origine:
- Uri.cs
- Origine:
- Uri.cs
- Origine:
- Uri.cs
Inizializza una nuova istanza della classe Uri con l'URI specificato.
public:
Uri(System::String ^ uriString);
public Uri (string uriString);
new Uri : string -> Uri
Public Sub New (uriString As String)
Parametri
- uriString
- String
Stringa che identifica la risorsa da rappresentare dall'istanza di Uri. Si noti che un indirizzo IPv6 in formato stringa deve essere racchiuso tra parentesi quadre. Ad esempio, "http://[2607:f8b0:400d:c06::69]".
Eccezioni
uriString
è null
.
Nota: nella .NET per le app di Windows Store o nella libreria di classi portabile , intercettare invece l'eccezione della classe di base FormatException.
uriString
è vuoto.
-o-
Lo schema specificato in uriString
non è formato correttamente. Vedere CheckSchemeName(String).
-o-
uriString
contiene troppe barre.
-o-
La password specificata in uriString
non è valida.
-o-
Il nome host specificato in uriString
non è valido.
-o-
Il nome file specificato in uriString
non è valido.
-o-
Il nome utente specificato in uriString
non è valido.
-o-
Il nome dell'host o dell'autorità specificato in uriString
non può essere terminato da barre rovesciata.
-o-
Il numero di porta specificato in uriString
non è valido o non può essere analizzato.
-o-
La lunghezza di uriString
supera i 65519 caratteri.
-o-
La lunghezza dello schema specificato in uriString
supera i 1023 caratteri.
-o-
In uriString
è presente una sequenza di caratteri non valida.
-o-
Il percorso MS-DOS specificato in uriString
deve iniziare con c:\\.
Esempio
Nell'esempio seguente viene creata un'istanza di Uri con l'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/")
Commenti
Questo costruttore crea un'istanza di Uri da una stringa URI. Analizza l'URI, lo inserisce in formato canonico e rende le codifiche di escape necessarie.
Questo costruttore non garantisce che il Uri faccia riferimento a una risorsa accessibile.
Questo costruttore presuppone che il parametro string
faccia riferimento a un URI assoluto ed equivale a chiamare il costruttore Uri con UriKind impostato su Absolute. Se il parametro string
passato al costruttore è un URI relativo, questo costruttore genererà un UriFormatException.
Si applica a
Uri(SerializationInfo, StreamingContext)
- Origine:
- Uri.cs
- Origine:
- Uri.cs
- Origine:
- Uri.cs
Attenzione
This API supports obsolete formatter-based serialization. It should not be called or extended by application code.
Inizializza una nuova istanza della classe Uri dalle istanze specificate delle classi SerializationInfo e StreamingContext.
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)
Parametri
- serializationInfo
- SerializationInfo
Istanza della classe SerializationInfo contenente le informazioni necessarie per serializzare la nuova istanza di Uri.
- streamingContext
- StreamingContext
Istanza della classe StreamingContext contenente l'origine del flusso serializzato associato alla nuova istanza di Uri.
- Attributi
Eccezioni
Il parametro serializationInfo
contiene un URI null
.
Il parametro serializationInfo
contiene un URI vuoto.
-o-
Lo schema specificato non è formato correttamente. Vedere CheckSchemeName(String).
-o-
L'URI contiene troppe barre.
-o-
La password specificata nell'URI non è valida.
-o-
Il nome host specificato nell'URI non è valido.
-o-
Il nome file specificato nell'URI non è valido.
-o-
Il nome utente specificato nell'URI non è valido.
-o-
Il nome dell'host o dell'autorità specificato nell'URI non può essere terminato da barre rovesciata.
-o-
Il numero di porta specificato nell'URI non è valido o non può essere analizzato.
-o-
La lunghezza dell'URI supera i 65519 caratteri.
-o-
La lunghezza dello schema specificato nell'URI supera i 1023 caratteri.
-o-
Nell'URI è presente una sequenza di caratteri non valida.
-o-
Il percorso MS-DOS specificato nell'URI deve iniziare con c:\\.
Commenti
Questo costruttore implementa l'interfaccia ISerializable per la classe Uri.
Vedi anche
Si applica a
Uri(String, Boolean)
- Origine:
- Uri.cs
- Origine:
- Uri.cs
- Origine:
- Uri.cs
Attenzione
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
Attenzione
This constructor has been deprecated; the dontEscape parameter is always false. Use Uri(string) instead.
Attenzione
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
Inizializza una nuova istanza della classe Uri con l'URI specificato, con il controllo esplicito dell'escape dei caratteri.
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)
Parametri
- uriString
- String
Stringa che identifica la risorsa da rappresentare dall'istanza di Uri. Si noti che un indirizzo IPv6 in formato stringa deve essere racchiuso tra parentesi quadre. Ad esempio, "http://[2607:f8b0:400d:c06::69]".
- dontEscape
- Boolean
true
se uriString
è completamente preceduto da escape; in caso contrario, false
.
- Attributi
Eccezioni
uriString
è null
.
uriString
è vuoto o contiene solo spazi.
-o-
Lo schema specificato in uriString
non è valido.
-o-
uriString
contiene troppe barre.
-o-
La password specificata in uriString
non è valida.
-o-
Il nome host specificato in uriString
non è valido.
-o-
Il nome file specificato in uriString
non è valido.
-o-
Il nome utente specificato in uriString
non è valido.
-o-
Il nome dell'host o dell'autorità specificato in uriString
non può essere terminato da barre rovesciata.
-o-
Il numero di porta specificato in uriString
non è valido o non può essere analizzato.
-o-
La lunghezza di uriString
supera i 65519 caratteri.
-o-
La lunghezza dello schema specificato in uriString
supera i 1023 caratteri.
-o-
In uriString
è presente una sequenza di caratteri non valida.
-o-
Il percorso MS-DOS specificato in uriString
deve iniziare con c:\\.
Esempio
Nell'esempio seguente viene creata un'istanza di Uri per l'URI http://www.contoso.com/Hello%20World.htm
. Poiché l'URI contenuto è completamente preceduto da escape ed è in formato canonico, il parametro dontEscape
può essere impostato su 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)
Commenti
Questo costruttore crea un'istanza di Uri da una stringa URI. Analizza l'URI e lo inserisce in formato canonico.
Il parametro dontEscape
controlla se i caratteri riservati vengono convertiti in sequenze di escape. Questo parametro deve essere impostato su true
solo se si è certi che tutti i caratteri riservati nell'URI siano stati preceduti da un carattere di escape. L'impostazione del valore su true
per un URI che non è stato completamente preceduto da escape può causare un comportamento imprevisto. È consigliabile impostare sempre questo parametro su false
.
Se dontEscape
è impostato su false
, il costruttore esegue l'escape di tutti i caratteri riservati controllando che tutte le occorrenze di percent (%) siano seguite da una sequenza di escape valida. Se la sequenza di caratteri che segue una percentuale non è valida, la percentuale viene sostituita da %25.
Questo costruttore non garantisce che il Uri faccia riferimento a una risorsa accessibile.
Si applica a
Uri(String, UriCreationOptions)
- Origine:
- Uri.cs
- Origine:
- Uri.cs
- Origine:
- Uri.cs
Inizializza una nuova istanza della classe Uri con l'URI specificato e altri 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)
Parametri
- creationOptions
- UriCreationOptions
Opzioni che controllano il comportamento e la creazione del Uri.
Si applica a
Uri(String, UriKind)
- Origine:
- Uri.cs
- Origine:
- Uri.cs
- Origine:
- Uri.cs
Inizializza una nuova istanza della classe Uri con l'URI specificato. Questo costruttore consente di specificare se la stringa URI è un URI relativo, un URI assoluto o è indeterminato.
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)
Parametri
- uriString
- String
Stringa che identifica la risorsa da rappresentare dall'istanza di Uri. Si noti che un indirizzo IPv6 in formato stringa deve essere racchiuso tra parentesi quadre. Ad esempio, "http://[2607:f8b0:400d:c06::69]".
- uriKind
- UriKind
Specifica se la stringa URI è un URI relativo, un URI assoluto o è indeterminato.
Eccezioni
uriKind
non è valido.
uriString
è null
.
Nota: nella .NET per le app di Windows Store o nella libreria di classi portabile , intercettare invece l'eccezione della classe di base FormatException.
uriString
contiene un URI relativo e uriKind
è Absolute.
o
uriString
contiene un URI assoluto e uriKind
è Relative.
o
uriString
è vuoto.
-o-
Lo schema specificato in uriString
non è formato correttamente. Vedere CheckSchemeName(String).
-o-
uriString
contiene troppe barre.
-o-
La password specificata in uriString
non è valida.
-o-
Il nome host specificato in uriString
non è valido.
-o-
Il nome file specificato in uriString
non è valido.
-o-
Il nome utente specificato in uriString
non è valido.
-o-
Il nome dell'host o dell'autorità specificato in uriString
non può essere terminato da barre rovesciata.
-o-
Il numero di porta specificato in uriString
non è valido o non può essere analizzato.
-o-
La lunghezza di uriString
supera i 65519 caratteri.
-o-
La lunghezza dello schema specificato in uriString
supera i 1023 caratteri.
-o-
In uriString
è presente una sequenza di caratteri non valida.
-o-
Il percorso MS-DOS specificato in uriString
deve iniziare con c:\\.
Commenti
Gli URI relativi e assoluti hanno restrizioni diverse per il formato. Ad esempio, un URI relativo non richiede uno schema o un'autorità. Il valore specificato in uriKind
deve corrispondere al tipo di URI passato in uriString
. Tuttavia, se si specifica RelativeOrAbsolute, la stringa URI può essere relativa o assoluta.
Si applica a
Uri(Uri, String)
- Origine:
- Uri.cs
- Origine:
- Uri.cs
- Origine:
- Uri.cs
Inizializza una nuova istanza della classe Uri in base all'URI di base e alla stringa URI relativa specificati.
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)
Parametri
- baseUri
- Uri
URI di base.
- relativeUri
- String
URI relativo da aggiungere all'URI di base.
Eccezioni
baseUri
è null
.
baseUri
non è un'istanza di Uri assoluta.
Nota: nella .NET per le app di Windows Store o nella libreria di classi portabile , intercettare invece l'eccezione della classe di base FormatException.
L'URI formato dalla combinazione di baseUri
e relativeUri
è vuoto o contiene solo spazi.
-o-
Lo schema specificato nell'URI formato dalla combinazione di baseUri
e relativeUri
non è valido.
-o-
L'URI formato dalla combinazione di baseUri
e relativeUri
contiene troppe barre.
-o-
La password specificata nell'URI formato dalla combinazione di baseUri
e relativeUri
non è valida.
-o-
Il nome host specificato nell'URI formato dalla combinazione di baseUri
e relativeUri
non è valido.
-o-
Il nome file specificato nell'URI formato dalla combinazione di baseUri
e relativeUri
non è valido.
-o-
Il nome utente specificato nell'URI formato dalla combinazione di baseUri
e relativeUri
non è valido.
-o-
Il nome dell'host o dell'autorità specificato nell'URI formato dalla combinazione di baseUri
e relativeUri
non può essere terminato da barre rovesciata.
-o-
Il numero di porta specificato nell'URI formato dalla combinazione di baseUri
e relativeUri
non è valido o non può essere analizzato.
-o-
La lunghezza dell'URI formato dalla combinazione di baseUri
e relativeUri
supera i 65519 caratteri.
-o-
La lunghezza dello schema specificato nell'URI formato dalla combinazione di baseUri
e relativeUri
supera i 1023 caratteri.
-o-
Esiste una sequenza di caratteri non valida nell'URI formato combinando baseUri
e relativeUri
.
-o-
Il percorso MS-DOS specificato in baseUri
deve iniziare con c:\\.
Esempio
Nell'esempio seguente viene creata una nuova istanza della classe Uri combinando gli URI relativi http://www.contoso.com
e catalog/shownew.htm
per formare l'URI assoluto 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())
Commenti
Questo costruttore crea un'istanza di Uri combinando il baseUri
e il relativeUri
. Se relativeUri
è un URI assoluto (contenente uno schema, un nome host e facoltativamente un numero di porta), l'istanza di Uri viene creata usando solo relativeUri
.
Se il baseUri
ha parti relative (ad esempio /api
), la parte relativa deve essere terminata con una barra, ad esempio /api/
, se la parte relativa di baseUri
deve essere mantenuta nell'Uricostruito.
Inoltre, se il relativeUri
inizia con una barra, sostituirà qualsiasi parte relativa del baseUri
Questo costruttore non garantisce che il Uri faccia riferimento a una risorsa accessibile.
Si applica a
Uri(Uri, Uri)
- Origine:
- Uri.cs
- Origine:
- Uri.cs
- Origine:
- 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)
Parametri
Eccezioni
baseUri
non è un'istanza di Uri assoluta.
baseUri
è null
.
baseUri
non è un'istanza di Uri assoluta.
Nota: nella .NET per le app di Windows Store o nella libreria di classi portabile , intercettare invece l'eccezione della classe di base FormatException.
L'URI formato dalla combinazione di baseUri
e relativeUri
è vuoto o contiene solo spazi.
-o-
Lo schema specificato nell'URI formato dalla combinazione di baseUri
e relativeUri
non è valido.
-o-
L'URI formato dalla combinazione di baseUri
e relativeUri
contiene troppe barre.
-o-
La password specificata nell'URI formato dalla combinazione di baseUri
e relativeUri
non è valida.
-o-
Il nome host specificato nell'URI formato dalla combinazione di baseUri
e relativeUri
non è valido.
-o-
Il nome file specificato nell'URI formato dalla combinazione di baseUri
e relativeUri
non è valido.
-o-
Il nome utente specificato nell'URI formato dalla combinazione di baseUri
e relativeUri
non è valido.
-o-
Il nome dell'host o dell'autorità specificato nell'URI formato dalla combinazione di baseUri
e relativeUri
non può essere terminato da barre rovesciata.
-o-
Il numero di porta specificato nell'URI formato dalla combinazione di baseUri
e relativeUri
non è valido o non può essere analizzato.
-o-
La lunghezza dell'URI formato dalla combinazione di baseUri
e relativeUri
supera i 65519 caratteri.
-o-
La lunghezza dello schema specificato nell'URI formato dalla combinazione di baseUri
e relativeUri
supera i 1023 caratteri.
-o-
Esiste una sequenza di caratteri non valida nell'URI formato combinando baseUri
e relativeUri
.
-o-
Il percorso MS-DOS specificato in baseUri
deve iniziare con c:\\.
Esempio
In questo esempio viene creata un'istanza di Uri assoluta, absoluteUri
e un'istanza di Uri relativa, relativeUri
. Una nuova istanza di Uri, combinedUri
, viene quindi creata da queste due istanze.
// 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
Commenti
Questo costruttore crea una nuova istanza di Uri combinando un'istanza di Uri assoluta, baseUri
, con un'istanza relativa Uri, relativeUri
. Se relativeUri
è un'istanza di Uri assoluta (contenente uno schema, un nome host e facoltativamente un numero di porta), l'istanza di Uri viene creata usando solo relativeUri
.
Se il baseUri
ha parti relative (ad esempio /api
), la parte relativa deve essere terminata con una barra, ad esempio /api/
, se la parte relativa di baseUri
deve essere mantenuta nell'Uricostruito.
Inoltre, se il relativeUri
inizia con una barra, sostituirà qualsiasi parte relativa del baseUri
Questo costruttore non garantisce che il Uri faccia riferimento a una risorsa accessibile.
Si applica a
Uri(Uri, String, Boolean)
- Origine:
- Uri.cs
- Origine:
- Uri.cs
- Origine:
- Uri.cs
Attenzione
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
Attenzione
This constructor has been deprecated; the dontEscape parameter is always false. Use Uri(Uri, string) instead.
Attenzione
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
Inizializza una nuova istanza della classe Uri in base alla base e agli URI relativi specificati, con il controllo esplicito dell'escape dei caratteri.
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)
Parametri
- baseUri
- Uri
URI di base.
- relativeUri
- String
URI relativo da aggiungere all'URI di base.
- dontEscape
- Boolean
true
se baseUri
e relativeUri
sono completamente preceduti da escape; in caso contrario, false
.
- Attributi
Eccezioni
baseUri
è null
.
baseUri
non è un'istanza di Uri assoluta.
L'URI formato dalla combinazione di baseUri
e relativeUri
è vuoto o contiene solo spazi.
-o-
Lo schema specificato nell'URI formato dalla combinazione di baseUri
e relativeUri
non è valido.
-o-
L'URI formato dalla combinazione di baseUri
e relativeUri
contiene troppe barre.
-o-
La password specificata nell'URI formato dalla combinazione di baseUri
e relativeUri
non è valida.
-o-
Il nome host specificato nell'URI formato dalla combinazione di baseUri
e relativeUri
non è valido.
-o-
Il nome file specificato nell'URI formato dalla combinazione di baseUri
e relativeUri
non è valido.
-o-
Il nome utente specificato nell'URI formato dalla combinazione di baseUri
e relativeUri
non è valido.
-o-
Il nome dell'host o dell'autorità specificato nell'URI formato dalla combinazione di baseUri
e relativeUri
non può essere terminato da barre rovesciata.
-o-
Il numero di porta specificato nell'URI formato dalla combinazione di baseUri
e relativeUri
non è valido o non può essere analizzato.
-o-
La lunghezza dell'URI formato dalla combinazione di baseUri
e relativeUri
supera i 65519 caratteri.
-o-
La lunghezza dello schema specificato nell'URI formato dalla combinazione di baseUri
e relativeUri
supera i 1023 caratteri.
-o-
Esiste una sequenza di caratteri non valida nell'URI formato combinando baseUri
e relativeUri
.
-o-
Il percorso MS-DOS specificato in baseUri
deve iniziare con c:\\.
Esempio
Nell'esempio seguente viene creata una nuova istanza della classe Uri combinando gli URI relativi http://www.contoso.com
e Hello%20World.htm
per formare un URI assoluto.
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)
Commenti
Questo costruttore crea un'istanza di Uri combinando baseUri
e relativeUri
. Se l'URI passato in relativeUri
è un URI assoluto (contenente uno schema, un nome host e facoltativamente un numero di porta), l'istanza di Uri viene creata usando solo relativeUri
.
Il parametro dontEscape
controlla se i caratteri riservati vengono convertiti in sequenze di escape. Questo parametro deve essere impostato su true
solo se si è certi che tutti i caratteri riservati nell'URI siano stati preceduti da un carattere di escape. L'impostazione del valore su true
per un URI che non è stato completamente preceduto da escape può causare un comportamento imprevisto. È consigliabile impostare sempre questo parametro su false
. Se dontEscape
è impostato su false
, il costruttore esegue l'escape di tutti i caratteri riservati controllando che tutte le occorrenze di percent (%) siano seguite da una sequenza di escape valida. Se la sequenza di caratteri che segue una percentuale non è valida, la percentuale viene sostituita da %25.
Questo costruttore non garantisce che il Uri faccia riferimento a una risorsa accessibile.
Note per i chiamanti
A causa di problemi di sicurezza, l'applicazione non deve chiamare questo costruttore con stringhe URI da origini non attendibili e con dontEscape
impostato su true
. In alternativa, è possibile controllare la validità di una stringa URI chiamando il metodo IsWellFormedOriginalString() prima di chiamare questo costruttore.