Uri Costruttori

Definizione

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 e con il controllo esplicito dell'escape dei caratteri.

Uri(String, UriCreationOptions)

Inizializza una nuova istanza della Uri classe con l'URI specificato e ulteriori 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 se è indeterminata.

Uri(Uri, String)

Inizializza una nuova istanza della classe Uri basata sull'URI di base specificato e sulla stringa URI relativa.

Uri(Uri, Uri)

Inizializza una nuova istanza della classe Uri sulla combinazione di un'istanza di Uri di base specificata e un'istanza di Uri relativa.

Uri(Uri, String, Boolean)
Obsoleti.
Obsoleti.
Obsoleti.

Inizializza una nuova istanza della classe Uri basata sugli URI di base e relativi specificati, con 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 che deve essere rappresentata dall'istanza di Uri. Si noti che un indirizzo IPv6 in formato di stringa deve essere racchiuso tra parentesi quadre. Ad esempio, "http://[2607:f8b0:400d:c06::69]".

Eccezioni

uriString è null.

Nota: nelle app .NET per Windows Store o nella libreria di classi portabile intercettare in alternativa l'eccezione della classe di base FormatException.

uriString è vuoto.

-oppure-

Lo schema specificato in uriString non ha un formato corretto. Vedere CheckSchemeName(String).

-oppure-

uriString contiene troppe barre.

-oppure-

La password specificata in uriString non è valida.

-oppure-

Il nome host specificato in uriString non è valido.

-oppure-

Il nome file specificato in uriString non è valido.

-oppure-

Il nome utente specificato in uriString non è valido.

-oppure-

Il nome host o dell'autorità specificato in uriString non può terminare con barre rovesciate.

-oppure-

Il numero di porta specificato in uriString non è valido e non può essere analizzato.

-oppure-

La lunghezza di uriString supera i 65519 caratteri.

-oppure-

La lunghezza dello schema specificato in uriString supera 1023 caratteri.

-oppure-

uriString contiene una sequenza di caratteri non valida.

-oppure-

Il percorso MS-DOS specificato in uriString deve iniziare con c:\\.

Esempio

Nell'esempio seguente viene creata un'istanza 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 Uri da una stringa URI. Analizza l'URI, lo inserisce in formato canonico e rende necessarie le codifiche di escape necessarie.

Questo costruttore non garantisce che il Uri riferimento a una risorsa accessibile.

Questo costruttore presuppone che il string parametro faccia riferimento a un URI assoluto ed è equivalente a chiamare il Uri costruttore con UriKind impostato su Absolute. Se il string parametro passato al costruttore è un URI relativo, questo costruttore genererà un UriFormatExceptionoggetto .

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.

-oppure-

Lo schema specificato non ha un formato corretto. Vedere CheckSchemeName(String).

-oppure-

L'URI contiene troppe barre.

-oppure-

La password specificata nell'URI non è valida.

-oppure-

Il nome host specificato nell'URI non è valido.

-oppure-

Il nome file specificato nell'URI non è valido.

-oppure-

Il nome utente specificato nell'URI non è valido.

-oppure-

Il nome host o dell'autorità specificato nell'URI non può terminare con barre rovesciate.

-oppure-

Il numero di porta specificato nell'URI non è valido e non può essere analizzato.

-oppure-

La lunghezza dell'URI supera i 65519 caratteri.

-oppure-

La lunghezza dello schema specificato nell'URI supera i 1023 caratteri.

-oppure-

L'URI contiene una sequenza di caratteri non valida.

-oppure-

Il percorso MS-DOS specificato nell'URI deve iniziare con c:\\.

Commenti

Questo costruttore implementa l'interfaccia ISerializable per la Uri classe.

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 e 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 che deve essere rappresentata dall'istanza di Uri. Si noti che un indirizzo IPv6 in formato di stringa deve essere racchiuso tra parentesi quadre. Ad esempio, "http://[2607:f8b0:400d:c06::69]".

dontEscape
Boolean

true se uriString è sottoposto a escape in modo completo. In caso contrario, false.

Attributi

Eccezioni

uriString è null.

uriString è vuoto o contiene solo spazi.

-oppure-

Lo schema specificato in uriString non è valido.

-oppure-

uriString contiene troppe barre.

-oppure-

La password specificata in uriString non è valida.

-oppure-

Il nome host specificato in uriString non è valido.

-oppure-

Il nome file specificato in uriString non è valido.

-oppure-

Il nome utente specificato in uriString non è valido.

-oppure-

Il nome host o dell'autorità specificato in uriString non può terminare con barre rovesciate.

-oppure-

Il numero di porta specificato in uriString non è valido e non può essere analizzato.

-oppure-

La lunghezza di uriString supera i 65519 caratteri.

-oppure-

La lunghezza dello schema specificato in uriString supera 1023 caratteri.

-oppure-

uriString contiene una sequenza di caratteri non valida.

-oppure-

Il percorso MS-DOS specificato in uriString deve iniziare con c:\\.

Esempio

Nell'esempio seguente viene creata un'istanza Uri per l'URI http://www.contoso.com/Hello%20World.htm. Poiché l'URI contenuto è completamente escape ed è in formato canonico, il dontEscape parametro 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 Uri da una stringa URI. Analizza l'URI e lo inserisce in formato canonico.

Il dontEscape parametro 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 un carattere di 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 percentuale (%) 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 fa 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 Uri classe con l'URI specificato e l'oggetto aggiuntivo 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

uriString
String

Stringa che identifica la risorsa che deve essere rappresentata dall'istanza di Uri.

creationOptions
UriCreationOptions

Opzioni che controllano il comportamento e la creazione dell'oggetto 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 se è indeterminata.

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 che deve essere rappresentata dall'istanza di Uri. Si noti che un indirizzo IPv6 in formato di 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 se è indeterminata.

Eccezioni

uriKind non è valido.

uriString è null.

Nota: nelle app .NET per Windows Store o nella libreria di classi portabile intercettare in alternativa l'eccezione della classe di base FormatException.

uriString contiene un URI relativo e uriKind è Absolute.

oppure

uriString contiene un URI assoluto e uriKind è Relative.

oppure

uriString è vuoto.

-oppure-

Lo schema specificato in uriString non ha un formato corretto. Vedere CheckSchemeName(String).

-oppure-

uriString contiene troppe barre.

-oppure-

La password specificata in uriString non è valida.

-oppure-

Il nome host specificato in uriString non è valido.

-oppure-

Il nome file specificato in uriString non è valido.

-oppure-

Il nome utente specificato in uriString non è valido.

-oppure-

Il nome host o dell'autorità specificato in uriString non può terminare con barre rovesciate.

-oppure-

Il numero di porta specificato in uriString non è valido e non può essere analizzato.

-oppure-

La lunghezza di uriString supera i 65519 caratteri.

-oppure-

La lunghezza dello schema specificato in uriString supera 1023 caratteri.

-oppure-

uriString contiene una sequenza di caratteri non valida.

-oppure-

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 RelativeOrAbsolute viene specificato, 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 basata sull'URI di base specificato e sulla stringa 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)

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: nelle app .NET per Windows Store o nella libreria di classi portabile intercettare in alternativa l'eccezione della classe di base FormatException.

L'URI formato dalla combinazione di baseUri e relativeUri è vuoto o contiene solo spazi.

-oppure-

Lo schema specificato nell'URI formato dalla combinazione di baseUri e relativeUri non è valido.

-oppure-

L'URI formato dalla combinazione di baseUri e relativeUri contiene troppe barre.

-oppure-

La password specificata nell'URI formato dalla combinazione di baseUri e relativeUri non è valida.

-oppure-

Il nome host specificato nell'URI formato dalla combinazione di baseUri e relativeUri non è valido.

-oppure-

Il nome file specificato nell'URI formato dalla combinazione di baseUri e relativeUri non è valido.

-oppure-

Il nome utente specificato nell'URI formato dalla combinazione di baseUri e relativeUri non è valido.

-oppure-

Il nome host o dell'autorità specificato nell'URI formato dalla combinazione di baseUri e relativeUri non può terminare con barre rovesciate.

-oppure-

Il numero di porta specificato nell'URI formato dalla combinazione di baseUri e relativeUri non è valido o non può essere analizzato.

-oppure-

La lunghezza dell'URI formato dalla combinazione di baseUri e relativeUri supera i 65519 caratteri.

-oppure-

La lunghezza dello schema specificato nell'URI formato dalla combinazione di baseUri e relativeUri supera i 1023 caratteri.

-oppure-

È presente una sequenza di caratteri non valida nell'URI formato dalla combinazione di baseUri e relativeUri.

-oppure-

Il percorso MS-DOS specificato in uriString deve iniziare con c:\\.

Esempio

Nell'esempio seguente viene creata una nuova istanza della Uri classe combinando gli URI http://www.contoso.com relativi e catalog/shownew.htm per formare l'URI http://www.contoso.com/catalog/shownew.htmassoluto .

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 Uri combinando e baseUri .relativeUri Se relativeUri è un URI assoluto (contenente uno schema, un nome host e facoltativamente un numero di porta), l'istanza Uri viene creata usando solo relativeUri.

Se ha baseUri 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'oggetto costruito Uri.

Inoltre, se inizia relativeUri con una barra, sostituirà qualsiasi parte relativa del baseUri

Questo costruttore non garantisce che il Uri fa riferimento a una risorsa accessibile.

Si applica a

Uri(Uri, Uri)

Origine:
Uri.cs
Origine:
Uri.cs
Origine:
Uri.cs

Inizializza una nuova istanza della classe Uri sulla combinazione di un'istanza di Uri di base specificata e un'istanza di Uri relativa.

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

baseUri
Uri

Oggetto Uri assoluto che costituisce la base per la nuova istanza di Uri.

relativeUri
Uri

Istanza di Uri relativa combinata con baseUri.

Eccezioni

baseUri non è un'istanza di Uri assoluta.

baseUri è null.

baseUri non è un'istanza di Uri assoluta.

Nota: nelle app .NET per Windows Store o nella libreria di classi portabile intercettare in alternativa l'eccezione della classe di base FormatException.

L'URI formato dalla combinazione di baseUri e relativeUri è vuoto o contiene solo spazi.

-oppure-

Lo schema specificato nell'URI formato dalla combinazione di baseUri e relativeUri non è valido.

-oppure-

L'URI formato dalla combinazione di baseUri e relativeUri contiene troppe barre.

-oppure-

La password specificata nell'URI formato dalla combinazione di baseUri e relativeUri non è valida.

-oppure-

Il nome host specificato nell'URI formato dalla combinazione di baseUri e relativeUri non è valido.

-oppure-

Il nome file specificato nell'URI formato dalla combinazione di baseUri e relativeUri non è valido.

-oppure-

Il nome utente specificato nell'URI formato dalla combinazione di baseUri e relativeUri non è valido.

-oppure-

Il nome host o dell'autorità specificato nell'URI formato dalla combinazione di baseUri e relativeUri non può terminare con barre rovesciate.

-oppure-

Il numero di porta specificato nell'URI formato dalla combinazione di baseUri e relativeUri non è valido o non può essere analizzato.

-oppure-

La lunghezza dell'URI formato dalla combinazione di baseUri e relativeUri supera i 65519 caratteri.

-oppure-

La lunghezza dello schema specificato nell'URI formato dalla combinazione di baseUri e relativeUri supera i 1023 caratteri.

-oppure-

È presente una sequenza di caratteri non valida nell'URI formato dalla combinazione di baseUri e relativeUri.

-oppure-

Il percorso MS-DOS specificato in uriString deve iniziare con c:\\.

Esempio

In questo esempio viene creata un'istanza assoluta Uri , absoluteUrie un'istanza relativa Uri , relativeUri. Una nuova Uri istanza, 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 Uri istanza combinando un'istanza assoluta Uri , baseUri, con un'istanza relativa Uri , relativeUri. Se relativeUri è un'istanza assoluta Uri (contenente uno schema, un nome host e facoltativamente un numero di porta), l'istanza Uri viene creata usando solo relativeUri.

Se ha baseUri 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'oggetto costruito Uri.

Inoltre, se inizia relativeUri con una barra, sostituirà qualsiasi parte relativa del baseUri

Questo costruttore non garantisce che il Uri fa 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 basata sugli URI di base e relativi specificati, con 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 uriString è sottoposto a escape in modo completo. 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.

-oppure-

Lo schema specificato nell'URI formato dalla combinazione di baseUri e relativeUri non è valido.

-oppure-

L'URI formato dalla combinazione di baseUri e relativeUri contiene troppe barre.

-oppure-

La password specificata nell'URI formato dalla combinazione di baseUri e relativeUri non è valida.

-oppure-

Il nome host specificato nell'URI formato dalla combinazione di baseUri e relativeUri non è valido.

-oppure-

Il nome file specificato nell'URI formato dalla combinazione di baseUri e relativeUri non è valido.

-oppure-

Il nome utente specificato nell'URI formato dalla combinazione di baseUri e relativeUri non è valido.

-oppure-

Il nome host o dell'autorità specificato nell'URI formato dalla combinazione di baseUri e relativeUri non può terminare con barre rovesciate.

-oppure-

Il numero di porta specificato nell'URI formato dalla combinazione di baseUri e relativeUri non è valido o non può essere analizzato.

-oppure-

La lunghezza dell'URI formato dalla combinazione di baseUri e relativeUri supera i 65519 caratteri.

-oppure-

La lunghezza dello schema specificato nell'URI formato dalla combinazione di baseUri e relativeUri supera i 1023 caratteri.

-oppure-

È presente una sequenza di caratteri non valida nell'URI formato dalla combinazione di baseUri e relativeUri.

-oppure-

Il percorso MS-DOS specificato in uriString deve iniziare con c:\\.

Esempio

Nell'esempio seguente viene creata una nuova istanza della Uri classe combinando gli URI http://www.contoso.com relativi 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 Uri combinando baseUri e relativeUri. Se l'URI passato relativeUri è un URI assoluto (contenente uno schema, un nome host e facoltativamente un numero di porta), l'istanza Uri viene creata usando solo relativeUri.

Il dontEscape parametro 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 un carattere di 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 percentuale (%) 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 fa 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 IsWellFormedOriginalString() metodo prima di chiamare questo costruttore.

Si applica a