Sdílet prostřednictvím


Uri Konstruktory

Definice

Inicializuje novou instanci Uri třídy.

Přetížení

Uri(String)

Inicializuje novou instanci Uri třídy se zadaným identifikátorem URI.

Uri(SerializationInfo, StreamingContext)
Zastaralé.

Inicializuje novou instanci Uri třídy ze zadaných SerializationInfo instancí tříd a StreamingContext .

Uri(String, Boolean)
Zastaralé.
Zastaralé.
Zastaralé.

Inicializuje novou instanci Uri třídy se zadaným identifikátorem URI s explicitním řízením úniku znaků.

Uri(String, UriCreationOptions)

Inicializuje novou instanci třídy pomocí zadaného Uri identifikátoru URI a další UriCreationOptions.

Uri(String, UriKind)

Inicializuje novou instanci Uri třídy se zadaným identifikátorem URI. Tento konstruktor umožňuje určit, jestli je řetězec identifikátoru URI relativní, absolutní identifikátor URI nebo je neurčitý.

Uri(Uri, String)

Inicializuje novou instanci třídy na základě zadaného základního Uri identifikátoru URI a relativního řetězce identifikátoru URI.

Uri(Uri, Uri)

Inicializuje novou instanci Uri třídy na základě kombinace zadané základní Uri instance a relativní Uri instance.

Uri(Uri, String, Boolean)
Zastaralé.
Zastaralé.
Zastaralé.

Inicializuje novou instanci Uri třídy na základě zadaných základních a relativních identifikátorů URI s explicitním řízením úniku znaků.

Uri(String)

Zdroj:
Uri.cs
Zdroj:
Uri.cs
Zdroj:
Uri.cs

Inicializuje novou instanci Uri třídy se zadaným identifikátorem URI.

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

Parametry

uriString
String

Řetězec, který identifikuje prostředek, který má být reprezentován Uri instancí. Všimněte si, že adresa IPv6 ve formě řetězce musí být uzavřena v hranatých závorkách. Například "http://[2607:f8b0:400d:c06::69]".

Výjimky

uriString je null.

Poznámka: V aplikacích .NET pro Windows Store nebo v přenosné knihovně tříd místo toho zachyťte výjimku FormatExceptionzákladní třídy.

uriString je prázdný.

-nebo-

Schéma zadané v uriString není správně vytvořeno. Viz třída CheckSchemeName(String).

-nebo-

uriString obsahuje příliš mnoho lomítek.

-nebo-

Heslo zadané v uriString souboru není platné.

-nebo-

Název hostitele zadaný v uriString souboru není platný.

-nebo-

Název souboru zadaný v uriString souboru není platný.

-nebo-

Uživatelské jméno zadané v uriString souboru není platné.

-nebo-

Název hostitele nebo autority zadaný v uriString souboru nelze ukončit zpětnými lomítky.

-nebo-

Číslo portu zadané v uriString souboru není platné nebo se nedá analyzovat.

-nebo-

Délka uriString přesahuje 65519 znaků.

-nebo-

Délka schématu zadaného v uriString souboru přesahuje 1023 znaků.

-nebo-

V systému je neplatná sekvence uriStringznaků.

-nebo-

Cesta systému MS-DOS zadaná v uriString souboru musí začínat na c:\\.

Příklady

Následující příklad vytvoří Uri instanci s identifikátorem 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/")

Poznámky

Tento konstruktor vytvoří Uri instanci z řetězce URI. Analyzuje identifikátor URI, umístí ho do kanonického formátu a provede všechna požadovaná řídicí kódování.

Tento konstruktor nezajistí, že Uri odkazuje na přístupný prostředek.

Tento konstruktor předpokládá, že string parametr odkazuje na absolutní identifikátor URI a je ekvivalentní volání konstruktoru Uri s nastaveným UriKind na Absolute. string Pokud je parametr předaný konstruktoru relativní identifikátor URI, vyvolá UriFormatExceptiontento konstruktor .

Platí pro

Uri(SerializationInfo, StreamingContext)

Zdroj:
Uri.cs
Zdroj:
Uri.cs
Zdroj:
Uri.cs

Upozornění

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

Inicializuje novou instanci Uri třídy ze zadaných SerializationInfo instancí tříd a 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)

Parametry

serializationInfo
SerializationInfo

Instance SerializationInfo třídy obsahující informace potřebné k serializaci nové Uri instance.

streamingContext
StreamingContext

Instance StreamingContext třídy obsahující zdroj serializovaného datového proudu přidruženého k nové Uri instanci.

Atributy

Výjimky

Parametr serializationInfo obsahuje null identifikátor URI.

Parametr serializationInfo obsahuje identifikátor URI, který je prázdný.

-nebo-

Zadané schéma není správně vytvořeno. Viz třída CheckSchemeName(String).

-nebo-

Identifikátor URI obsahuje příliš mnoho lomítek.

-nebo-

Heslo zadané v identifikátoru URI není platné.

-nebo-

Název hostitele zadaný v identifikátoru URI není platný.

-nebo-

Název souboru zadaný v identifikátoru URI není platný.

-nebo-

Uživatelské jméno zadané v identifikátoru URI není platné.

-nebo-

Název hostitele nebo autority zadaný v identifikátoru URI nelze ukončit zpětnými lomítky.

-nebo-

Číslo portu zadané v identifikátoru URI není platné nebo se nedá analyzovat.

-nebo-

Délka identifikátoru URI přesahuje 65519 znaků.

-nebo-

Délka schématu zadaného v identifikátoru URI přesahuje 1023 znaků.

-nebo-

V identifikátoru URI je neplatná sekvence znaků.

-nebo-

Cesta systému MS-DOS zadaná v identifikátoru URI musí začínat na c:\\.

Poznámky

Tento konstruktor implementuje ISerializable rozhraní pro Uri třídu.

Viz také

Platí pro

Uri(String, Boolean)

Zdroj:
Uri.cs
Zdroj:
Uri.cs
Zdroj:
Uri.cs

Upozorně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

Upozornění

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

Upozorně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

Inicializuje novou instanci Uri třídy se zadaným identifikátorem URI s explicitní kontrolou pro uvozování znaků.

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)

Parametry

uriString
String

Řetězec, který identifikuje prostředek, který má být reprezentován Uri instancí. Všimněte si, že IPv6 adresa ve formě řetězce musí být uzavřena v hranatých závorkách. Například "http://[2607:f8b0:400d:c06::69]".

dontEscape
Boolean

true pokud uriString je zcela unikne, jinak hodnota false.

Atributy

Výjimky

uriString je null.

uriString je prázdný nebo obsahuje pouze mezery.

-nebo-

Schéma zadané v uriString není platné.

-nebo-

uriString obsahuje příliš mnoho lomítek.

-nebo-

Heslo zadané v uriString souboru není platné.

-nebo-

Název hostitele zadaný v uriString souboru není platný.

-nebo-

Název souboru zadaný v uriString souboru není platný.

-nebo-

Uživatelské jméno zadané v uriString souboru není platné.

-nebo-

Název hostitele nebo autority zadaný v uriString nástroji nelze ukončit zpětnými lomítky.

-nebo-

Číslo portu zadané v uriString souboru není platné nebo se nedá analyzovat.

-nebo-

uriString Délka souboru přesahuje 65519 znaků.

-nebo-

Délka schématu zadaného v uriString souboru přesahuje 1023 znaků.

-nebo-

V souboru je neplatná sekvence uriStringznaků.

-nebo-

Cesta ms-DOS zadaná v uriString souboru musí začínat c:\\.

Příklady

Následující příklad vytvoří Uri instanci pro identifikátor URI http://www.contoso.com/Hello%20World.htm. Vzhledem k tomu, že identifikátor URI s omezením je zcela řídicí a je v kanonické podobě, dontEscape je možné parametr nastavit na truehodnotu .

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)

Poznámky

Tento konstruktor vytvoří Uri instanci z řetězce identifikátoru URI. Analyzuje identifikátor URI a vloží ho do kanonického formátu.

Parametr dontEscape určuje, jestli se rezervované znaky přeloží do řídicích sekvencí. Tento parametr by měl být nastaven na true hodnotu pouze v případě, že jste si jistí, že všechny vyhrazené znaky v identifikátoru URI byly řídicími znaky. Nastavení hodnoty true pro identifikátor URI, který není zcela u řídicího objektu, může způsobit neočekávané chování. Důrazně doporučujeme, abyste vždy nastavili tento parametr na falsehodnotu .

Pokud dontEscape je nastavena na falsehodnotu , konstruktor uchytá všechny rezervované znaky tím, že zkontroluje, že všechny výskyty procenta (%) jsou následovány platnou řídicí sekvencí. Pokud sekvence znaků následující za procentem není platná, nahradí se procento znakem %25.

Tento konstruktor nezajistí, že Uri odkazuje na přístupný prostředek.

Platí pro

Uri(String, UriCreationOptions)

Zdroj:
Uri.cs
Zdroj:
Uri.cs
Zdroj:
Uri.cs

Inicializuje novou instanci Uri třídy se zadaným identifikátorem URI a další 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)

Parametry

uriString
String

Řetězec, který identifikuje prostředek, který má být reprezentován Uri instancí.

creationOptions
UriCreationOptions

Možnosti, které určují, jak Uri se objekt vytvoří a jak se chová.

Platí pro

Uri(String, UriKind)

Zdroj:
Uri.cs
Zdroj:
Uri.cs
Zdroj:
Uri.cs

Inicializuje novou instanci Uri třídy se zadaným identifikátorem URI. Tento konstruktor umožňuje určit, jestli je řetězec identifikátoru URI relativní, absolutní nebo neurčitý.

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)

Parametry

uriString
String

Řetězec, který identifikuje prostředek, který má být reprezentován Uri instancí. Všimněte si, že IPv6 adresa ve formě řetězce musí být uzavřena v hranatých závorkách. Například "http://[2607:f8b0:400d:c06::69]".

uriKind
UriKind

Určuje, jestli je řetězec identifikátoru URI relativní, absolutní nebo neurčitý.

Výjimky

Formát uriKind je neplatný.

uriString je null.

Poznámka: V rozhraní .NET pro aplikace pro Windows Store nebo v knihovně přenosných tříd místo toho zachyťte výjimku FormatExceptionzákladní třídy .

uriString obsahuje relativní identifikátor URI a uriKind je Absolute.

nebo

uriString obsahuje absolutní identifikátor URI a uriKind je Relative.

nebo

uriString je prázdné.

-nebo-

Schéma zadané v uriString souboru není správně vytvořeno. Viz třída CheckSchemeName(String).

-nebo-

uriString obsahuje příliš mnoho lomítek.

-nebo-

Heslo zadané v uriString souboru není platné.

-nebo-

Název hostitele zadaný v uriString souboru není platný.

-nebo-

Název souboru zadaný v uriString souboru není platný.

-nebo-

Uživatelské jméno zadané v uriString souboru není platné.

-nebo-

Název hostitele nebo autority zadaný v uriString nástroji nelze ukončit zpětnými lomítky.

-nebo-

Číslo portu zadané v uriString souboru není platné nebo se nedá analyzovat.

-nebo-

uriString Délka souboru přesahuje 65519 znaků.

-nebo-

Délka schématu zadaného v uriString souboru přesahuje 1023 znaků.

-nebo-

V souboru je neplatná sekvence uriStringznaků.

-nebo-

Cesta ms-DOS zadaná v uriString souboru musí začínat c:\\.

Poznámky

Relativní a absolutní identifikátory URI mají různá omezení formátu. Například relativní identifikátor URI nevyžaduje schéma ani autoritu. Hodnota zadaná v uriKind souboru se musí shodovat s typem identifikátoru URI předaného v uriString. Pokud RelativeOrAbsolute je však zadán, řetězec identifikátoru URI může být relativní nebo absolutní.

Platí pro

Uri(Uri, String)

Zdroj:
Uri.cs
Zdroj:
Uri.cs
Zdroj:
Uri.cs

Inicializuje novou instanci třídy na základě zadaného základního Uri identifikátoru URI a relativního řetězce identifikátoru URI.

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)

Parametry

baseUri
Uri

Základní identifikátor URI.

relativeUri
String

Relativní identifikátor URI, který se má přidat do základního identifikátoru URI.

Výjimky

baseUri je null.

baseUri není absolutní Uri instance.

Poznámka: V rozhraní .NET pro aplikace pro Windows Store nebo v knihovně přenosných tříd místo toho zachyťte výjimku FormatExceptionzákladní třídy .

Identifikátor URI vytvořený kombinací baseUri a relativeUri je prázdný nebo obsahuje pouze mezery.

-nebo-

Schéma zadané v identifikátoru URI vytvořeném baseUri kombinací a relativeUri není platné.

-nebo-

Identifikátor URI vytvořený kombinací baseUri a relativeUri obsahuje příliš mnoho lomítek.

-nebo-

Heslo zadané v identifikátoru URI vytvořené kombinací baseUri a relativeUri není platné.

-nebo-

Název hostitele zadaný v identifikátoru URI vytvořený kombinací baseUri a relativeUri není platný.

-nebo-

Název souboru zadaný v identifikátoru URI vytvořený kombinací baseUri a relativeUri není platný.

-nebo-

Uživatelské jméno zadané v identifikátoru URI vytvořené kombinací baseUri a relativeUri není platné.

-nebo-

Název hostitele nebo autority zadaný v identifikátoru URI vytvořený kombinací baseUri a relativeUri nelze ho ukončit zpětnými lomítky.

-nebo-

Číslo portu zadané v identifikátoru URI vytvořeném baseUri kombinací a relativeUri není platné nebo nelze analyzovat.

-nebo-

Délka identifikátoru URI vytvořeného baseUri kombinací a relativeUri přesahuje 65519 znaků.

-nebo-

Délka schématu zadaného v identifikátoru URI vytvořeném baseUri kombinací a relativeUri přesahuje 1023 znaků.

-nebo-

V identifikátoru URI je neplatná sekvence znaků vytvořená kombinací baseUri a relativeUri.

-nebo-

Cesta systému MS-DOS zadaná v uriString souboru musí začínat na c:\\.

Příklady

Následující příklad vytvoří novou instanci třídy kombinací relativních Uri identifikátorů http://www.contoso.com URI a catalog/shownew.htm vytvoří absolutní identifikátor URI 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())

Poznámky

Tento konstruktor vytvoří Uri instanci kombinací baseUrirelativeUria . Pokud relativeUri je absolutní identifikátor URI (obsahující schéma, název hostitele a volitelně číslo portu), Uri instance se vytvoří pouze relativeUripomocí .

baseUri Pokud má relativní části (například /api), musí být relativní část ukončena lomítkem (například /api/), pokud má být relativní část baseUri zachována ve vytvořeném Uriobjektu .

Pokud relativeUri navíc hodnota začíná lomítkem, nahradí všechny relativní části baseUri

Tento konstruktor nezajistí, že Uri odkazuje na přístupný prostředek.

Platí pro

Uri(Uri, Uri)

Zdroj:
Uri.cs
Zdroj:
Uri.cs
Zdroj:
Uri.cs

Inicializuje novou instanci Uri třídy na základě kombinace zadané základní Uri instance a relativní Uri instance.

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)

Parametry

baseUri
Uri

Absolutní Uri , které je základem nové Uri instance.

relativeUri
Uri

Relativní Uri instance, která je kombinována s baseUri.

Výjimky

baseUri není absolutní Uri instancí.

baseUri je null.

baseUri není absolutní Uri instancí.

Poznámka: V aplikacích .NET pro Windows Store nebo v přenosné knihovně tříd místo toho zachyťte výjimku FormatExceptionzákladní třídy.

Identifikátor URI vytvořený kombinací baseUri a relativeUri je prázdný nebo obsahuje pouze mezery.

-nebo-

Schéma zadané v identifikátoru URI vytvořeném baseUri kombinací a relativeUri není platné.

-nebo-

Identifikátor URI vytvořený kombinací baseUri a relativeUri obsahuje příliš mnoho lomítek.

-nebo-

Heslo zadané v identifikátoru URI vytvořeném baseUri kombinací a relativeUri není platné.

-nebo-

Název hostitele zadaný v identifikátoru URI vytvořeném baseUri kombinací a relativeUri není platný.

-nebo-

Název souboru zadaný v identifikátoru URI vytvořený kombinací baseUri a relativeUri není platný.

-nebo-

Uživatelské jméno zadané v identifikátoru URI vytvořeném baseUri kombinací a relativeUri není platné.

-nebo-

Název hostitele nebo autority zadaný v identifikátoru URI vytvořeném baseUri kombinací a relativeUri nelze ho ukončit zpětnými lomítky.

-nebo-

Číslo portu zadané v identifikátoru URI vytvořeném baseUri kombinací a relativeUri není platné nebo nelze analyzovat.

-nebo-

Délka identifikátoru URI vytvořeného baseUri kombinací a relativeUri přesahuje 65519 znaků.

-nebo-

Délka schématu zadaného v identifikátoru URI vytvořeném baseUri kombinací a relativeUri přesahuje 1023 znaků.

-nebo-

V identifikátoru URI je neplatná sekvence znaků vytvořená kombinací baseUri a relativeUri.

-nebo-

Cesta systému MS-DOS zadaná v uriString souboru musí začínat na c:\\.

Příklady

Tento příklad vytvoří absolutní Uri instanci absoluteUria relativní Uri instanci relativeUri. Z těchto dvou instancí se pak vytvoří nová Uri instance combinedUri.

// 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

Poznámky

Tento konstruktor vytvoří novou Uri instanci kombinací absolutní Uri instance , baseUris relativní Uri instancí . relativeUri Pokud relativeUri je absolutní Uri instancí (obsahující schéma, název hostitele a volitelně číslo portu), vytvoří se Uri pouze relativeUripomocí .

baseUri Pokud má relativní části (například /api), musí být relativní část ukončena lomítkem (například /api/), pokud má být relativní část baseUri zachována ve vytvořeném Uriobjektu .

Pokud relativeUri navíc hodnota začíná lomítkem, nahradí všechny relativní části baseUri

Tento konstruktor nezajistí, že Uri odkazuje na přístupný prostředek.

Platí pro

Uri(Uri, String, Boolean)

Zdroj:
Uri.cs
Zdroj:
Uri.cs
Zdroj:
Uri.cs

Upozorně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

Upozornění

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

Upozorně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

Inicializuje novou instanci Uri třídy na základě zadaných základních a relativních identifikátorů URI s explicitním řízením úniku znaků.

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)

Parametry

baseUri
Uri

Základní identifikátor URI.

relativeUri
String

Relativní identifikátor URI, který se má přidat do základního identifikátoru URI.

dontEscape
Boolean

truepokud uriString je zcela utekl; v opačném případě . false

Atributy

Výjimky

baseUri je null.

baseUri není absolutní Uri instancí.

Identifikátor URI vytvořený kombinací baseUri a relativeUri je prázdný nebo obsahuje pouze mezery.

-nebo-

Schéma zadané v identifikátoru URI vytvořeném baseUri kombinací a relativeUri není platné.

-nebo-

Identifikátor URI vytvořený kombinací baseUri a relativeUri obsahuje příliš mnoho lomítek.

-nebo-

Heslo zadané v identifikátoru URI vytvořeném baseUri kombinací a relativeUri není platné.

-nebo-

Název hostitele zadaný v identifikátoru URI vytvořeném baseUri kombinací a relativeUri není platný.

-nebo-

Název souboru zadaný v identifikátoru URI vytvořený kombinací baseUri a relativeUri není platný.

-nebo-

Uživatelské jméno zadané v identifikátoru URI vytvořeném baseUri kombinací a relativeUri není platné.

-nebo-

Název hostitele nebo autority zadaný v identifikátoru URI vytvořeném baseUri kombinací a relativeUri nelze ho ukončit zpětnými lomítky.

-nebo-

Číslo portu zadané v identifikátoru URI vytvořeném baseUri kombinací a relativeUri není platné nebo nelze analyzovat.

-nebo-

Délka identifikátoru URI vytvořeného baseUri kombinací a relativeUri přesahuje 65519 znaků.

-nebo-

Délka schématu zadaného v identifikátoru URI vytvořeném baseUri kombinací a relativeUri přesahuje 1023 znaků.

-nebo-

V identifikátoru URI je neplatná sekvence znaků vytvořená kombinací baseUri a relativeUri.

-nebo-

Cesta systému MS-DOS zadaná v uriString souboru musí začínat na c:\\.

Příklady

Následující příklad vytvoří novou instanci třídy kombinací relativních Uri identifikátorů http://www.contoso.com URI a Hello%20World.htm vytvoří absolutní identifikátor URI.

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)

Poznámky

Tento konstruktor vytvoří Uri instanci kombinací baseUri a relativeUri. Pokud je identifikátor URI předaný absolutním relativeUri identifikátorem URI (obsahujícím schéma, název hostitele a volitelně číslo portu), vytvoří se Uri instance pouze relativeUripomocí .

Parametr dontEscape určuje, jestli se rezervované znaky přeloží do řídicích sekvencí. Tento parametr by měl být nastaven na true pouze v případě, že jste si jisti, že všechny rezervované znaky v identifikátoru URI byly řídicí. Nastavení hodnoty na true pro identifikátor URI, který nebyl zcela řídicí, může způsobit neočekávané chování. Důrazně doporučujeme, abyste tento parametr vždy nastavili na falsehodnotu . Pokud dontEscape je nastavená hodnota false, konstruktor ukazuje všechny rezervované znaky tím, že zkontroluje, že všechny výskyty procenta (%) jsou následovány platnou řídicí sekvencí. Pokud sekvence znaků následující za procentem není platná, nahradí se procento %25.

Tento konstruktor nezajistí, že Uri odkazuje na přístupný prostředek.

Poznámky pro volající

Z bezpečnostních důvodů by vaše aplikace neměla volat tento konstruktor s řetězci identifikátoru URI z nedůvěryhodných zdrojů a s nastaveným dontEscape na true. Případně můžete zkontrolovat platnost řetězce identifikátoru URI voláním IsWellFormedOriginalString() metody před voláním tohoto konstruktoru.

Platí pro