Uri Konstruktory
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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 uriString
existuje 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 uriString
existuje 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
- 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 uriString
existuje 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
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
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, absoluteUri
a 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.