Uri Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Biedt een objectweergave van een URI (Uniform Resource Identifier) en eenvoudige toegang tot de onderdelen van de URI.
public ref class Uri
public ref class Uri : MarshalByRefObject, System::Runtime::Serialization::ISerializable
public ref class Uri : System::Runtime::Serialization::ISerializable
public class Uri
[System.Serializable]
public class Uri : MarshalByRefObject, System.Runtime.Serialization.ISerializable
[System.Serializable]
[System.ComponentModel.TypeConverter(typeof(System.UriTypeConverter))]
public class Uri : System.Runtime.Serialization.ISerializable
public class Uri : System.Runtime.Serialization.ISerializable
type Uri = class
[<System.Serializable>]
type Uri = class
inherit MarshalByRefObject
interface ISerializable
[<System.Serializable>]
[<System.ComponentModel.TypeConverter(typeof(System.UriTypeConverter))>]
type Uri = class
interface ISerializable
type Uri = class
interface ISerializable
Public Class Uri
Public Class Uri
Inherits MarshalByRefObject
Implements ISerializable
Public Class Uri
Implements ISerializable
- Overname
-
Uri
- Overname
- Kenmerken
- Implementeringen
Voorbeelden
In het volgende voorbeeld wordt een exemplaar van de Uri klasse gemaakt en gebruikt voor het uitvoeren van een GET-aanvraag met HttpClient.
Uri siteUri = new Uri("http://www.contoso.com/");
// HttpClient lifecycle management best practices:
// https://dotnet.territoriali.olinfo.it/dotnet/fundamentals/networking/http/httpclient-guidelines#recommended-use
HttpClient client = new HttpClient();
HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, siteUri);
HttpResponseMessage response = client.Send(request);
let siteUri = Uri "http://www.contoso.com/"
// HttpClient lifecycle management best practices:
// https://dotnet.territoriali.olinfo.it/dotnet/fundamentals/networking/http/httpclient-guidelines#recommended-use
use client = new HttpClient ()
use request = new HttpRequestMessage (HttpMethod.Get, siteUri)
use response = client.Send request
Dim siteUri As New Uri("http://www.contoso.com/")
' HttpClient lifecycle management best practices:
' https://dotnet.territoriali.olinfo.it/dotnet/fundamentals/networking/http/httpclient-guidelines#recommended-use
Dim client As New HttpClient()
Dim request As New HttpRequestMessage(HttpMethod.Get, siteUri)
Dim response As HttpResponseMessage = client.Send(request)
In het volgende codefragment ziet u voorbeeldwaarden van de verschillende eigenschappen in de klasse.
Uri uri = new Uri("https://user:password@www.contoso.com:80/Home/Index.htm?q1=v1&q2=v2#FragmentName");
Console.WriteLine($"AbsolutePath: {uri.AbsolutePath}");
Console.WriteLine($"AbsoluteUri: {uri.AbsoluteUri}");
Console.WriteLine($"DnsSafeHost: {uri.DnsSafeHost}");
Console.WriteLine($"Fragment: {uri.Fragment}");
Console.WriteLine($"Host: {uri.Host}");
Console.WriteLine($"HostNameType: {uri.HostNameType}");
Console.WriteLine($"IdnHost: {uri.IdnHost}");
Console.WriteLine($"IsAbsoluteUri: {uri.IsAbsoluteUri}");
Console.WriteLine($"IsDefaultPort: {uri.IsDefaultPort}");
Console.WriteLine($"IsFile: {uri.IsFile}");
Console.WriteLine($"IsLoopback: {uri.IsLoopback}");
Console.WriteLine($"IsUnc: {uri.IsUnc}");
Console.WriteLine($"LocalPath: {uri.LocalPath}");
Console.WriteLine($"OriginalString: {uri.OriginalString}");
Console.WriteLine($"PathAndQuery: {uri.PathAndQuery}");
Console.WriteLine($"Port: {uri.Port}");
Console.WriteLine($"Query: {uri.Query}");
Console.WriteLine($"Scheme: {uri.Scheme}");
Console.WriteLine($"Segments: {string.Join(", ", uri.Segments)}");
Console.WriteLine($"UserEscaped: {uri.UserEscaped}");
Console.WriteLine($"UserInfo: {uri.UserInfo}");
// AbsolutePath: /Home/Index.htm
// AbsoluteUri: https://user:password@www.contoso.com:80/Home/Index.htm?q1=v1&q2=v2#FragmentName
// DnsSafeHost: www.contoso.com
// Fragment: #FragmentName
// Host: www.contoso.com
// HostNameType: Dns
// IdnHost: www.contoso.com
// IsAbsoluteUri: True
// IsDefaultPort: False
// IsFile: False
// IsLoopback: False
// IsUnc: False
// LocalPath: /Home/Index.htm
// OriginalString: https://user:password@www.contoso.com:80/Home/Index.htm?q1=v1&q2=v2#FragmentName
// PathAndQuery: /Home/Index.htm?q1=v1&q2=v2
// Port: 80
// Query: ?q1=v1&q2=v2
// Scheme: https
// Segments: /, Home/, Index.htm
// UserEscaped: False
// UserInfo: user:password
let uri = Uri "https://user:password@www.contoso.com:80/Home/Index.htm?q1=v1&q2=v2#FragmentName"
printfn $"AbsolutePath: {uri.AbsolutePath}"
printfn $"AbsoluteUri: {uri.AbsoluteUri}"
printfn $"DnsSafeHost: {uri.DnsSafeHost}"
printfn $"Fragment: {uri.Fragment}"
printfn $"Host: {uri.Host}"
printfn $"HostNameType: {uri.HostNameType}"
printfn $"IdnHost: {uri.IdnHost}"
printfn $"IsAbsoluteUri: {uri.IsAbsoluteUri}"
printfn $"IsDefaultPort: {uri.IsDefaultPort}"
printfn $"IsFile: {uri.IsFile}"
printfn $"IsLoopback: {uri.IsLoopback}"
printfn $"IsUnc: {uri.IsUnc}"
printfn $"LocalPath: {uri.LocalPath}"
printfn $"OriginalString: {uri.OriginalString}"
printfn $"PathAndQuery: {uri.PathAndQuery}"
printfn $"Port: {uri.Port}"
printfn $"Query: {uri.Query}"
printfn $"Scheme: {uri.Scheme}"
printfn $"""Segments: {String.Join(", ", uri.Segments)}"""
printfn $"UserEscaped: {uri.UserEscaped}"
printfn $"UserInfo: {uri.UserInfo}"
// AbsolutePath: /Home/Index.htm
// AbsoluteUri: https://user:password@www.contoso.com:80/Home/Index.htm?q1=v1&q2=v2#FragmentName
// DnsSafeHost: www.contoso.com
// Fragment: #FragmentName
// Host: www.contoso.com
// HostNameType: Dns
// IdnHost: www.contoso.com
// IsAbsoluteUri: True
// IsDefaultPort: False
// IsFile: False
// IsLoopback: False
// IsUnc: False
// LocalPath: /Home/Index.htm
// OriginalString: https://user:password@www.contoso.com:80/Home/Index.htm?q1=v1&q2=v2#FragmentName
// PathAndQuery: /Home/Index.htm?q1=v1&q2=v2
// Port: 80
// Query: ?q1=v1&q2=v2
// Scheme: https
// Segments: /, Home/, Index.htm
// UserEscaped: False
// UserInfo: user:password
Opmerkingen
Zie Aanvullende API-opmerkingen voor Uri voor meer informatie over deze API.
Constructors
| Name | Description |
|---|---|
| Uri(SerializationInfo, StreamingContext) |
Initialiseert een nieuw exemplaar van de Uri klasse op basis van de opgegeven exemplaren van de SerializationInfo en StreamingContext klassen. |
| Uri(String, Boolean) |
Verouderd.
Verouderd.
Initialiseert een nieuw exemplaar van de Uri klasse met de opgegeven URI, met expliciete controle over escape-tekens. |
| Uri(String, UriKind) |
Initialiseert een nieuw exemplaar van de Uri klasse met de opgegeven URI. Met deze constructor kunt u opgeven of de URI-tekenreeks een relatieve URI, absolute URI of onbepaald is. |
| Uri(String) |
Initialiseert een nieuw exemplaar van de Uri klasse met de opgegeven URI. |
| Uri(Uri, String, Boolean) |
Verouderd.
Verouderd.
Initialiseert een nieuw exemplaar van de Uri klasse op basis van de opgegeven basis en relatieve URI's, met expliciete controle over escape-tekens. |
| Uri(Uri, String) |
Initialiseert een nieuw exemplaar van de Uri klasse op basis van de opgegeven basis-URI en relatieve URI-tekenreeks. |
| Uri(Uri, Uri) |
Initialiseert een nieuw exemplaar van de Uri klasse op basis van de combinatie van een opgegeven basisexemplaren Uri en een relatief Uri exemplaar. |
Velden
| Name | Description |
|---|---|
| SchemeDelimiter |
Hiermee geeft u de tekens op die het communicatieprotocolschema scheiden van het adresgedeelte van de URI. Dit veld is alleen-lezen. |
| UriSchemeFile |
Hiermee geeft u op dat de URI een aanwijzer naar een bestand is. Dit veld is alleen-lezen. |
| UriSchemeFtp |
Hiermee geeft u op dat de URI wordt geopend via het File Transfer Protocol (FTP). Dit veld is alleen-lezen. |
| UriSchemeGopher |
Hiermee geeft u op dat de URI wordt geopend via het Gopher-protocol. Dit veld is alleen-lezen. |
| UriSchemeHttp |
Hiermee geeft u op dat de URI wordt geopend via het Hypertext Transfer Protocol (HTTP). Dit veld is alleen-lezen. |
| UriSchemeHttps |
Hiermee geeft u op dat de URI wordt geopend via het Secure Hypertext Transfer Protocol (HTTPS). Dit veld is alleen-lezen. |
| UriSchemeMailto |
Hiermee geeft u op dat de URI een e-mailadres is en wordt geopend via het Simple Mail Transport Protocol (SMTP). Dit veld is alleen-lezen. |
| UriSchemeNetPipe |
Hiermee geeft u op dat de URI wordt geopend via het NetPipe-schema dat wordt gebruikt door Windows Communication Foundation (WCF). Dit veld is alleen-lezen. |
| UriSchemeNetTcp |
Hiermee geeft u op dat de URI wordt geopend via het NetTcp-schema dat wordt gebruikt door Windows Communication Foundation (WCF). Dit veld is alleen-lezen. |
| UriSchemeNews |
Hiermee geeft u op dat de URI een internetnieuwsgroep is en toegankelijk is via het Network News Transport Protocol (NNTP). Dit veld is alleen-lezen. |
| UriSchemeNntp |
Hiermee geeft u op dat de URI een internetnieuwsgroep is en toegankelijk is via het Network News Transport Protocol (NNTP). Dit veld is alleen-lezen. |
Eigenschappen
| Name | Description |
|---|---|
| AbsolutePath |
Hiermee haalt u het absolute pad van de URI op. |
| AbsoluteUri |
Haalt de absolute URI op. |
| Authority |
Hiermee haalt u de DNS-hostnaam (Domain Name System) of het IP-adres en het poortnummer voor een server op. |
| DnsSafeHost |
Hiermee haalt u een hostnaam op die, nadat u indien nodig ongezichtig bent, veilig is voor DNS-omzetting. |
| Fragment |
Hiermee wordt het escaped URI-fragment opgehaald, inclusief het voorloopteken '#' als dit niet leeg is. |
| Host |
Hiermee haalt u het hostonderdeel van dit exemplaar op. |
| HostNameType |
Hiermee haalt u het type hostnaam op dat is opgegeven in de URI. |
| IdnHost |
Hiermee haalt u de RFC 3490-compatibele internationale domeinnaam van de host op met behulp van Punycode, indien van toepassing. Deze tekenreeks, nadat deze indien nodig ongezichtig is, is veilig te gebruiken voor DNS-omzetting. |
| IsAbsoluteUri |
Hiermee wordt een waarde opgehaald die aangeeft of het Uri exemplaar absoluut is. |
| IsDefaultPort |
Hiermee wordt een waarde opgehaald die aangeeft of de poortwaarde van de URI de standaardwaarde voor dit schema is. |
| IsFile |
Hiermee wordt een waarde opgehaald die aangeeft of de opgegeven Uri bestands-URI is. |
| IsLoopback |
Hiermee wordt een waarde opgehaald die aangeeft of de opgegeven Uri verwijzingen naar de lokale host verwijzen. |
| IsUnc |
Hiermee wordt een waarde opgehaald die aangeeft of het opgegeven Uri een UNC-pad (Universal Naming Convention) is. |
| LocalPath |
Hiermee haalt u een lokale besturingssysteemweergave van een bestandsnaam op. |
| OriginalString |
Hiermee haalt u de oorspronkelijke URI-tekenreeks op die is doorgegeven aan de Uri constructor. |
| PathAndQuery |
Haalt de AbsolutePath en Query eigenschappen op, gescheiden door een vraagteken (?). |
| Port |
Hiermee haalt u het poortnummer van deze URI op. |
| Query |
Haalt querygegevens op die zijn opgenomen in de opgegeven URI, inclusief het voorloopteken '?' als deze niet leeg is. |
| Scheme |
Hiermee haalt u de schemanaam voor deze URI op. |
| Segments |
Hiermee haalt u een matrix op met de padsegmenten waaruit de opgegeven URI bestaat. |
| UserEscaped |
Hiermee wordt een waarde opgehaald die aangeeft of de URI-tekenreeks volledig is ontsnapt voordat het Uri exemplaar werd gemaakt. |
| UserInfo |
Hiermee haalt u de gebruikersnaam, het wachtwoord of andere gebruikersspecifieke informatie op die is gekoppeld aan de opgegeven URI. |
Methoden
| Name | Description |
|---|---|
| Canonicalize() |
Verouderd.
Verouderd.
Converteert de intern opgeslagen URI naar canonieke vorm. |
| CheckHostName(String) |
Bepaalt of de opgegeven hostnaam een geldige DNS-naam is. |
| CheckSchemeName(String) |
Bepaalt of de opgegeven schemanaam geldig is. |
| CheckSecurity() |
Verouderd.
Verouderd.
Het aanroepen van deze methode heeft geen effect. |
| Compare(Uri, Uri, UriComponents, UriFormat, StringComparison) |
Vergelijkt de opgegeven onderdelen van twee URI's met behulp van de opgegeven vergelijkingsregels. |
| CreateObjRef(Type) |
Hiermee maakt u een object dat alle relevante informatie bevat die nodig is om een proxy te genereren die wordt gebruikt om te communiceren met een extern object. (Overgenomen van MarshalByRefObject) |
| Equals(Object) |
Vergelijkt twee Uri instanties voor gelijkheid. |
| Escape() |
Verouderd.
Verouderd.
Converteert onveilige of gereserveerde tekens in het padonderdeel naar de hexadecimale tekenweergaven. |
| EscapeDataString(String) |
Converteert een tekenreeks naar de escape-weergave. |
| EscapeString(String) |
Verouderd.
Verouderd.
Converteert een tekenreeks naar de escape-weergave. |
| EscapeUriString(String) |
Converteert een URI-tekenreeks naar de escape-weergave. |
| FromHex(Char) |
Hiermee haalt u de decimale waarde van een hexadecimaal cijfer op. |
| GetComponents(UriComponents, UriFormat) |
Hiermee haalt u de opgegeven onderdelen van het huidige exemplaar op met behulp van de opgegeven escape voor speciale tekens. |
| GetHashCode() |
Haalt de hashcode voor de URI op. |
| GetLeftPart(UriPartial) |
Hiermee haalt u het opgegeven gedeelte van een Uri exemplaar op. |
| GetLifetimeService() |
Hiermee haalt u het huidige levensduurserviceobject op waarmee het levensduurbeleid voor dit exemplaar wordt beheerd. (Overgenomen van MarshalByRefObject) |
| GetObjectData(SerializationInfo, StreamingContext) |
Retourneert de gegevens die nodig zijn om het huidige exemplaar te serialiseren. |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| HexEscape(Char) |
Converteert een opgegeven teken naar het hexadecimale equivalent. |
| HexUnescape(String, Int32) |
Converteert een opgegeven hexadecimale weergave van een teken naar het teken. |
| InitializeLifetimeService() |
Hiermee haalt u een levensduurserviceobject op om het levensduurbeleid voor dit exemplaar te beheren. (Overgenomen van MarshalByRefObject) |
| IsBadFileSystemCharacter(Char) |
Verouderd.
Verouderd.
Hiermee wordt aangegeven of een teken ongeldig is in de naam van een bestandssysteem. |
| IsBaseOf(Uri) |
Bepaalt of het huidige Uri exemplaar een basis is van het opgegeven Uri exemplaar. |
| IsExcludedCharacter(Char) |
Verouderd.
Verouderd.
Bepaalt of het opgegeven teken moet worden ontsnapt. |
| IsHexDigit(Char) |
Bepaalt of een opgegeven teken een geldig hexadecimaal cijfer is. |
| IsHexEncoding(String, Int32) |
Bepaalt of een teken in een tekenreeks hexadecimaal is gecodeerd. |
| IsReservedCharacter(Char) |
Verouderd.
Verouderd.
Bepaalt of het opgegeven teken een gereserveerd teken is. |
| IsWellFormedOriginalString() |
Hiermee wordt aangegeven of de tekenreeks die is gebruikt om dit Uri te maken, goed is gevormd en geen verdere escape-bewerking vereist. |
| IsWellFormedUriString(String, UriKind) |
Geeft aan of de tekenreeks goed is gevormd door een URI te maken met de tekenreeks en zorgt ervoor dat de tekenreeks geen verdere escape-bewerking vereist. |
| MakeRelative(Uri) |
Verouderd.
Verouderd.
Bepaalt het verschil tussen twee Uri exemplaren. |
| MakeRelativeUri(Uri) |
Bepaalt het verschil tussen twee Uri exemplaren. |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| Parse() |
Verouderd.
Verouderd.
Parseert de URI van het huidige exemplaar om ervoor te zorgen dat deze alle onderdelen bevat die vereist zijn voor een geldige URI. |
| ToString() |
Hiermee haalt u een canonieke tekenreeksweergave op voor het opgegeven Uri exemplaar. |
| TryCreate(String, UriKind, Uri) |
Hiermee maakt u een nieuwe Uri met behulp van het opgegeven String exemplaar en een UriKind. |
| TryCreate(Uri, String, Uri) |
Hiermee maakt u een nieuwe Uri met behulp van de opgegeven basis- en relatieve String exemplaren. |
| TryCreate(Uri, Uri, Uri) |
Hiermee maakt u een nieuwe Uri met behulp van de opgegeven basis- en relatieve Uri exemplaren. |
| Unescape(String) |
Verouderd.
Verouderd.
Converteert de opgegeven tekenreeks door escapereeksen te vervangen door hun ongezichtige weergave. |
| UnescapeDataString(String) |
Converteert een tekenreeks naar de ongezichtige weergave. |
Operators
| Name | Description |
|---|---|
| Equality(Uri, Uri) |
Bepaalt of twee Uri exemplaren dezelfde waarde hebben. |
| Inequality(Uri, Uri) |
Bepaalt of twee Uri exemplaren niet dezelfde waarde hebben. |
Expliciete interface-implementaties
| Name | Description |
|---|---|
| ISerializable.GetObjectData(SerializationInfo, StreamingContext) |
Retourneert de gegevens die nodig zijn om het huidige exemplaar te serialiseren. |
Van toepassing op
Veiligheid thread
Alle leden van Uri zijn thread-veilig en kunnen gelijktijdig worden gebruikt vanuit meerdere threads.