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 pomocí zadaného identifikátoru URI.

Uri(SerializationInfo, StreamingContext)
Zastaralé.

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

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

Inicializuje novou instanci Uri třídy se zadaným identifikátorem URI s explicitním ovládáním znakového escapingu.

Uri(String, UriCreationOptions)

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

Uri(String, UriKind)

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

Uri(Uri, String)

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

Uri(Uri, Uri)

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

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

Inicializuje novou instanci třídy Uri na základě zadané základní a relativní identifikátory URI s explicitním ovládáním znakového escapingu.

Uri(String)

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

Inicializuje novou instanci Uri třídy pomocí zadaného identifikátoru 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 formuláři ř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 .NET pro aplikace pro Windows Store nebo přenosné knihovny třídzachyťte výjimku základní třídy, FormatException, místo toho.

uriString je prázdný.

-nebo-

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

-nebo-

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

-nebo-

Heslo zadané v uriString není platné.

-nebo-

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

-nebo-

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

-nebo-

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

-nebo-

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

-nebo-

Číslo portu zadaného v uriString není platné nebo nelze analyzovat.

-nebo-

Délka uriString přesahuje 65519 znaků.

-nebo-

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

-nebo-

V uriStringexistuje neplatná sekvence znaků .

-nebo-

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

Příklady

Následující příklad vytvoří instanci Uri 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ří instanci Uri z řetězce identifikátoru URI. Parsuje 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 UriKind nastavenou na Absolute. Pokud string parametr předaný konstruktoru je relativní identifikátor URI, tento konstruktor vyvolá UriFormatException.

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 třídy Uri ze zadaných instancí SerializationInfo a StreamingContext třídy.

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 třídy SerializationInfo obsahující informace potřebné k serializaci nové instance Uri.

streamingContext
StreamingContext

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

Atributy

Výjimky

Parametr serializationInfo obsahuje identifikátor URI null.

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

-nebo-

Zadané schéma není správně vytvořeno. Viz 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 nelze 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 existuje neplatná sekvence znaků.

-nebo-

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

Poznámky

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

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ím ovládáním znakového escapingu.

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 adresa IPv6 ve formuláři ř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 je uriString zcela utekl; jinak false.

Atributy

Výjimky

uriString je null.

uriString je prázdná nebo obsahuje jenom mezery.

-nebo-

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

-nebo-

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

-nebo-

Heslo zadané v uriString není platné.

-nebo-

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

-nebo-

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

-nebo-

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

-nebo-

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

-nebo-

Číslo portu zadaného v uriString není platné nebo nelze analyzovat.

-nebo-

Délka uriString přesahuje 65519 znaků.

-nebo-

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

-nebo-

V uriStringexistuje neplatná sekvence znaků .

-nebo-

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

Příklady

Následující příklad vytvoří instanci Uri pro identifikátor URI http://www.contoso.com/Hello%20World.htm. Vzhledem k tomu, že obsažený identifikátor URI je zcela řídicí a je v kanonické podobě, lze parametr dontEscape nastavit na 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)

Poznámky

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

Parametr dontEscape určuje, jestli jsou rezervované znaky přeloženy 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 uchycené. Nastavení hodnoty na true identifikátoru URI, který nebyl zcela uchycený, může způsobit neočekávané chování. Důrazně doporučujeme, abyste tento parametr vždy nastavili na false.

Pokud je dontEscape nastavena na false, konstruktor ukazuje všechny rezervované znaky tak, že zkontroluje, zda jsou všechny výskyty procent (%) následované platnou řídicí sekvencí. Pokud sekvence znaků za procentem není platná, nahradí se procento %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 třídy Uri se zadaným identifikátorem URI a dalším 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 se Uri vytváří a chová.

Platí pro

Uri(String, UriKind)

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

Inicializuje novou instanci Uri třídy pomocí zadaného identifikátoru URI. Tento konstruktor umožňuje určit, jestli je řetězec identifikátoru URI relativní identifikátor URI, absolutní identifikátor URI nebo je 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 adresa IPv6 ve formuláři ř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, zda je řetězec identifikátoru URI relativní identifikátor URI, absolutní identifikátor URI nebo je neurčitý.

Výjimky

uriKind je neplatný.

uriString je null.

Poznámka: V .NET pro aplikace pro Windows Store nebo přenosné knihovny třídzachyťte výjimku základní třídy, FormatException, místo toho.

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 není správně vytvořeno. Viz CheckSchemeName(String).

-nebo-

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

-nebo-

Heslo zadané v uriString není platné.

-nebo-

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

-nebo-

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

-nebo-

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

-nebo-

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

-nebo-

Číslo portu zadaného v uriString není platné nebo nelze analyzovat.

-nebo-

Délka uriString přesahuje 65519 znaků.

-nebo-

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

-nebo-

V uriStringexistuje neplatná sekvence znaků .

-nebo-

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

Poznámky

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

Platí pro

Uri(Uri, String)

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

Inicializuje novou instanci Uri třídy na základě zadaného základního 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í instancí Uri.

Poznámka: V .NET pro aplikace pro Windows Store nebo přenosné knihovny třídzachyťte výjimku základní třídy, FormatException, místo toho.

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é kombinací baseUri 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 ukončit zpětnými lomítky.

-nebo-

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

-nebo-

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

-nebo-

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

-nebo-

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

-nebo-

Cesta MS-DOS zadaná v baseUri musí začínat c:\\.

Příklady

Následující příklad vytvoří novou instanci třídy Uri kombinací relativních identifikátorů URI http://www.contoso.com a catalog/shownew.htm vytvořit 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ří instanci Uri kombinací baseUri a relativeUri. Pokud je relativeUri absolutní identifikátor URI (obsahující schéma, název hostitele a volitelně číslo portu), vytvoří se Uri instance pouze relativeUri.

Pokud má baseUri relativní části (například /api), musí být relativní část ukončena lomítkem (například /api/), pokud je relativní část baseUri zachována v konstruované Uri.

Navíc pokud relativeUri začíná lomítkem, nahradí se jakákoli relativní část 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 třídy Uri 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é instance Uri.

relativeUri
Uri

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

Výjimky

baseUri není absolutní instancí Uri.

baseUri je null.

baseUri není absolutní instancí Uri.

Poznámka: V .NET pro aplikace pro Windows Store nebo přenosné knihovny třídzachyťte výjimku základní třídy, FormatException, místo toho.

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é kombinací baseUri 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 ukončit zpětnými lomítky.

-nebo-

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

-nebo-

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

-nebo-

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

-nebo-

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

-nebo-

Cesta MS-DOS zadaná v baseUri musí začínat c:\\.

Příklady

Tento příklad vytvoří absolutní instanci Uri, absoluteUria relativní instanci UrirelativeUri. Z těchto dvou instancí se vytvoří nová instance UricombinedUri.

// 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 instanci Uri kombinací absolutní instance Uri, baseUri, s relativní Uri instance, relativeUri. Pokud je relativeUri absolutní instancí Uri (obsahující schéma, název hostitele a volitelně číslo portu), vytvoří se instance Uri pouze pomocí relativeUri.

Pokud má baseUri relativní části (například /api), musí být relativní část ukončena lomítkem (například /api/), pokud je relativní část baseUri zachována v konstruované Uri.

Navíc pokud relativeUri začíná lomítkem, nahradí se jakákoli relativní část 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 třídy Uri na základě zadané základní a relativní identifikátory URI s explicitním ovládáním znakového escapingu.

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

true, pokud jsou baseUri a relativeUri zcela unikly; jinak false.

Atributy

Výjimky

baseUri je null.

baseUri není absolutní instancí Uri.

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é kombinací baseUri 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 ukončit zpětnými lomítky.

-nebo-

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

-nebo-

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

-nebo-

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

-nebo-

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

-nebo-

Cesta MS-DOS zadaná v baseUri musí začínat c:\\.

Příklady

Následující příklad vytvoří novou instanci třídy Uri kombinací relativních identifikátorů URI http://www.contoso.com a Hello%20World.htm vytvořit 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ří instanci Uri kombinací baseUri a relativeUri. Pokud je identifikátor URI předaný v relativeUri absolutní identifikátor URI (obsahující schéma, název hostitele a volitelně číslo portu), vytvoří se Uri instance pouze relativeUri.

Parametr dontEscape určuje, jestli jsou rezervované znaky přeloženy 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 uchycené. Nastavení hodnoty na true identifikátoru URI, který nebyl zcela uchycený, může způsobit neočekávané chování. Důrazně doporučujeme, abyste tento parametr vždy nastavili na false. Pokud je dontEscape nastavena na false, konstruktor ukazuje všechny rezervované znaky tak, že zkontroluje, zda jsou všechny výskyty procent (%) následované platnou řídicí sekvencí. Pokud sekvence znaků 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 aplikace neměla volat tento konstruktor s řetězci identifikátoru URI z nedůvěryhodných zdrojů a s dontEscape nastavenou na true. Případně můžete zkontrolovat platnost řetězce identifikátoru URI voláním metody IsWellFormedOriginalString() před voláním tohoto konstruktoru.

Platí pro