Uri Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Tekdüzen kaynak tanımlayıcısının (URI) nesne gösterimini ve URI'nin bölümlerine kolay erişim sağlar.
public ref class Uri
public ref class Uri : System::Runtime::Serialization::ISerializable
public ref class Uri : ISpanFormattable, System::Runtime::Serialization::ISerializable
public ref class Uri : IEquatable<Uri ^>, ISpanFormattable, System::Runtime::Serialization::ISerializable
public ref class Uri : MarshalByRefObject, System::Runtime::Serialization::ISerializable
public class Uri
public class Uri : System.Runtime.Serialization.ISerializable
public class Uri : ISpanFormattable, System.Runtime.Serialization.ISerializable
public class Uri : IEquatable<Uri>, ISpanFormattable, System.Runtime.Serialization.ISerializable
[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
type Uri = class
type Uri = class
interface ISerializable
type Uri = class
interface ISpanFormattable
interface IFormattable
interface ISerializable
type Uri = class
interface IFormattable
interface ISpanFormattable
interface IEquatable<Uri>
interface ISerializable
[<System.Serializable>]
type Uri = class
inherit MarshalByRefObject
interface ISerializable
[<System.Serializable>]
[<System.ComponentModel.TypeConverter(typeof(System.UriTypeConverter))>]
type Uri = class
interface ISerializable
Public Class Uri
Public Class Uri
Implements ISerializable
Public Class Uri
Implements ISerializable, ISpanFormattable
Public Class Uri
Implements IEquatable(Of Uri), ISerializable, ISpanFormattable
Public Class Uri
Inherits MarshalByRefObject
Implements ISerializable
- Devralma
-
Uri
- Devralma
- Öznitelikler
- Uygulamalar
Örnekler
Aşağıdaki örnek, Uri sınıfının bir örneğini oluşturur ve HttpClientile get isteği gerçekleştirmek için kullanır.
Uri^ siteUri = gcnew Uri("http://www.contoso.com/");
// HttpClient lifecycle management best practices:
// https://learn.microsoft.com/dotnet/fundamentals/networking/http/httpclient-guidelines#recommended-use
HttpClient^ client = gcnew HttpClient;
HttpRequestMessage^ request = gcnew HttpRequestMessage(HttpMethod::Get, siteUri);
HttpResponseMessage^ response = client->Send(request);
Uri siteUri = new Uri("http://www.contoso.com/");
// HttpClient lifecycle management best practices:
// https://learn.microsoft.com/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://learn.microsoft.com/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://learn.microsoft.com/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)
Aşağıdaki kod parçacığı, sınıftaki çeşitli özelliklerin örnek değerlerini gösterir.
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
Açıklamalar
Bu API hakkında daha fazla bilgi için bkz. Uriiçin ek API açıklamaları
Oluşturucular
Uri(SerializationInfo, StreamingContext) |
Geçersiz.
SerializationInfo ve StreamingContext sınıflarının belirtilen örneklerinden Uri sınıfının yeni bir örneğini başlatır. |
Uri(String) |
Belirtilen URI ile Uri sınıfının yeni bir örneğini başlatır. |
Uri(String, Boolean) |
Geçersiz.
Geçersiz.
Geçersiz.
Belirtilen URI ile Uri sınıfının yeni bir örneğini başlatır ve karakter kaçışı açık denetimiyle. |
Uri(String, UriCreationOptions) |
Belirtilen URI ve ek UriCreationOptionsile Uri sınıfının yeni bir örneğini başlatır. |
Uri(String, UriKind) |
Belirtilen URI ile Uri sınıfının yeni bir örneğini başlatır. Bu oluşturucu, URI dizesinin göreli bir URI mi, mutlak URI mi yoksa belirsiz mi olduğunu belirtmenize olanak tanır. |
Uri(Uri, String) |
Belirtilen temel URI'yi ve göreli URI dizesini temel alarak Uri sınıfının yeni bir örneğini başlatır. |
Uri(Uri, String, Boolean) |
Geçersiz.
Geçersiz.
Geçersiz.
Belirtilen temel ve göreli URI'leri temel alarak Uri sınıfının yeni bir örneğini başlatır ve karakter kaçışını açık bir şekilde denetler. |
Uri(Uri, Uri) |
Belirtilen temel Uri örneği ve göreli Uri örneği birleşimine göre Uri sınıfının yeni bir örneğini başlatır. |
Alanlar
SchemeDelimiter |
İletişim protokolü düzenini URI'nin adres bölümünden ayıran karakterleri belirtir. Bu alan salt okunur. |
UriSchemeFile |
URI'nin bir dosya işaretçisi olduğunu belirtir. Bu alan salt okunur. |
UriSchemeFtp |
URI'ye Dosya Aktarım Protokolü (FTP) aracılığıyla erişildiğini belirtir. Bu alan salt okunur. |
UriSchemeFtps |
URI'ye Dosya Aktarım Protokolü Güvenli (FTPS) aracılığıyla erişildiğini belirtir. Bu alan salt okunur. |
UriSchemeGopher |
URI'ye Gopher protokolü aracılığıyla erişildiğini belirtir. Bu alan salt okunur. |
UriSchemeHttp |
URI'ye Köprü Metni Aktarım Protokolü (HTTP) aracılığıyla erişildiğini belirtir. Bu alan salt okunur. |
UriSchemeHttps |
URI'ye Güvenli Köprü Metni Aktarım Protokolü (HTTPS) aracılığıyla erişildiğini belirtir. Bu alan salt okunur. |
UriSchemeMailto |
URI'nin bir e-posta adresi olduğunu ve Basit Posta Aktarım Protokolü (SMTP) aracılığıyla erişildiğini belirtir. Bu alan salt okunur. |
UriSchemeNetPipe |
URI'ye Windows Communication Foundation (WCF) tarafından kullanılan NetPipe şeması aracılığıyla erişildiğini belirtir. Bu alan salt okunur. |
UriSchemeNetTcp |
URI'ye Windows Communication Foundation (WCF) tarafından kullanılan NetTcp şeması aracılığıyla erişildiğini belirtir. Bu alan salt okunur. |
UriSchemeNews |
URI'nin bir İnternet haber grubu olduğunu ve Ağ Haber Aktarım Protokolü (NNTP) üzerinden erişildiğini belirtir. Bu alan salt okunur. |
UriSchemeNntp |
URI'nin bir İnternet haber grubu olduğunu ve Ağ Haber Aktarım Protokolü (NNTP) üzerinden erişildiğini belirtir. Bu alan salt okunur. |
UriSchemeSftp |
URI'ye SSH Dosya Aktarım Protokolü (SFTP) aracılığıyla erişildiğini belirtir. Bu alan salt okunur. |
UriSchemeSsh |
URI'ye Güvenli Yuva Kabuğu protokolü (SSH) aracılığıyla erişildiğini belirtir. Bu alan salt okunur. |
UriSchemeTelnet |
URI'ye Telnet protokolü aracılığıyla erişildiğini belirtir. Bu alan salt okunur. |
UriSchemeWs |
URI'ye WebSocket protokolü (WS) üzerinden erişildiğini belirtir. Bu alan salt okunur. |
UriSchemeWss |
URI'ye WebSocket Güvenli protokolü (WSS) üzerinden erişildiğini belirtir. Bu alan salt okunur. |
Özellikler
AbsolutePath |
URI'nin mutlak yolunu alır. |
AbsoluteUri |
Mutlak URI'yi alır. |
Authority |
Etki Alanı Adı Sistemi (DNS) ana bilgisayar adını veya IP adresini ve bir sunucunun bağlantı noktası numarasını alır. |
DnsSafeHost |
Gerekirse, manzarası kaldırıldıktan sonra DNS çözümlemesi için güvenli olan bir ana bilgisayar adı alır. |
Fragment |
Boş değilse baştaki '#' karakteri de dahil olmak üzere kaçış URI parçasını alır. |
Host |
Bu örneğin konak bileşenini alır. |
HostNameType |
URI'de belirtilen konak adının türünü alır. |
IdnHost |
Punycode'u uygun şekilde kullanarak konağın RFC 3490 uyumlu Uluslararası Etki Alanı Adını alır. Gerekirse, bu dizenin manzarası kaldırıldıktan sonra DNS çözümlemesi için kullanılması güvenlidir. |
IsAbsoluteUri |
Uri örneğinin mutlak olup olmadığını gösteren bir değer alır. |
IsDefaultPort |
URI'nin bağlantı noktası değerinin bu düzen için varsayılan olup olmadığını gösteren bir değer alır. |
IsFile |
Belirtilen Uri dosya URI'sinin olup olmadığını gösteren bir değer alır. |
IsLoopback |
Belirtilen Uri yerel konağa başvurup başvurmadığını gösteren bir değer alır. |
IsUnc |
Belirtilen Uri evrensel adlandırma kuralı (UNC) yolu olup olmadığını gösteren bir değer alır. |
LocalPath |
Dosya adının yerel işletim sistemi gösterimini alır. |
OriginalString |
Uri oluşturucusunun geçirildiği özgün URI dizesini alır. |
PathAndQuery |
AbsolutePath ve Query özelliklerini soru işaretiyle (?) ayırarak alır. |
Port |
Bu URI'nin bağlantı noktası numarasını alır. |
Query |
Boş değilse baştaki '?' karakteri de dahil olmak üzere belirtilen URI'ye dahil olan tüm sorgu bilgilerini alır. |
Scheme |
Bu URI için şema adını alır. |
Segments |
Belirtilen URI'yi oluşturan yol kesimlerini içeren bir dizi alır. |
UserEscaped |
URI dizesinin Uri örneği oluşturulmadan önce tamamen kaçış yapılıp yapılmadığını gösteren bir değer alır. |
UserInfo |
Belirtilen URI ile ilişkili kullanıcı adını, parolayı veya kullanıcıya özgü diğer bilgileri alır. |
Yöntemler
Canonicalize() |
Geçersiz.
Geçersiz.
Geçersiz.
dahili olarak depolanan URI'yi kurallı forma dönüştürür. |
CheckHostName(String) |
Belirtilen ana bilgisayar adının geçerli bir DNS adı olup olmadığını belirler. |
CheckSchemeName(String) |
Belirtilen düzen adının geçerli olup olmadığını belirler. |
CheckSecurity() |
Geçersiz.
Geçersiz.
Geçersiz.
Bu yöntemi çağırmanın hiçbir etkisi yoktur. |
Compare(Uri, Uri, UriComponents, UriFormat, StringComparison) |
Belirtilen karşılaştırma kurallarını kullanarak iki URI'nin belirtilen bölümlerini karşılaştırır. |
CreateObjRef(Type) |
Uzak bir nesneyle iletişim kurmak için kullanılan bir ara sunucu oluşturmak için gereken tüm ilgili bilgileri içeren bir nesne oluşturur. (Devralındığı yer: MarshalByRefObject) |
Equals(Object) |
Eşitlik için iki Uri örneğini karşılaştırır. |
Equals(Uri) |
Eşitlik için iki Uri örneğini karşılaştırır. |
Escape() |
Geçersiz.
Geçersiz.
Geçersiz.
Yol bileşenindeki güvenli olmayan veya ayrılmış karakterleri onaltılık karakter gösterimlerine dönüştürür. |
EscapeDataString(ReadOnlySpan<Char>) |
Bir yayılma alanını kaçış gösterimine dönüştürür. |
EscapeDataString(String) |
Bir dizeyi kaçış gösterimine dönüştürür. |
EscapeString(String) |
Geçersiz.
Geçersiz.
Geçersiz.
Geçersiz.
Bir dizeyi kaçış gösterimine dönüştürür. |
EscapeUriString(String) |
Geçersiz.
Geçersiz.
URI dizesini kaçış gösterimine dönüştürür. |
FromHex(Char) |
Onaltılık bir rakamın ondalık değerini alır. |
GetComponents(UriComponents, UriFormat) |
Özel karakterler için belirtilen kaçışı kullanarak geçerli örneğin belirtilen bileşenlerini alır. |
GetHashCode() |
URI için karma kodu alır. |
GetLeftPart(UriPartial) |
Uri örneğinin belirtilen bölümünü alır. |
GetLifetimeService() |
Geçersiz.
Bu örnek için yaşam süresi ilkesini denetleen geçerli yaşam süresi hizmet nesnesini alır. (Devralındığı yer: MarshalByRefObject) |
GetObjectData(SerializationInfo, StreamingContext) |
Geçerli örneği seri hale getirmek için gereken verileri döndürür. |
GetType() |
Geçerli örneğin Type alır. (Devralındığı yer: Object) |
HexEscape(Char) |
Belirtilen karakteri onaltılık eşdeğerine dönüştürür. |
HexUnescape(String, Int32) |
Bir karakterin belirtilen onaltılık gösterimini karaktere dönüştürür. |
InitializeLifetimeService() |
Geçersiz.
Bu örneğin yaşam süresi ilkesini denetlemek için bir yaşam süresi hizmet nesnesi alır. (Devralındığı yer: MarshalByRefObject) |
IsBadFileSystemCharacter(Char) |
Geçersiz.
Geçersiz.
Geçersiz.
Dosya sistemi adında bir karakterin geçersiz olup olmadığını gösterir. |
IsBaseOf(Uri) |
Geçerli Uri örneğinin belirtilen Uri örneğinin temeli olup olmadığını belirler. |
IsExcludedCharacter(Char) |
Geçersiz.
Geçersiz.
Geçersiz.
Belirtilen karakterin kaçış yapılıp yapılmayacağını belirler. |
IsHexDigit(Char) |
Belirtilen karakterin geçerli bir onaltılık basamak olup olmadığını belirler. |
IsHexEncoding(String, Int32) |
Dizedeki bir karakterin onaltılık kodlanmış olup olmadığını belirler. |
IsReservedCharacter(Char) |
Geçersiz.
Geçersiz.
Geçersiz.
Belirtilen karakterin ayrılmış karakter olup olmadığını belirler. |
IsWellFormedOriginalString() |
Bu Uri oluşturmak için kullanılan dizenin iyi biçimlendirilmiş olup olmadığını ve daha fazla kaçış gerektirmediğini gösterir. |
IsWellFormedUriString(String, UriKind) |
Dize ile bir URI oluşturmayı deneyerek dizenin iyi biçimlendirilip biçimlendirilmediğini gösterir ve dizenin daha fazla kaçış gerektirmemesini sağlar. |
MakeRelative(Uri) |
Geçersiz.
Geçersiz.
Geçersiz.
Geçersiz.
İki Uri örneği arasındaki farkı belirler. |
MakeRelativeUri(Uri) |
İki Uri örneği arasındaki farkı belirler. |
MemberwiseClone() |
Geçerli Objectbasit bir kopyasını oluşturur. (Devralındığı yer: Object) |
MemberwiseClone(Boolean) |
Geçerli MarshalByRefObject nesnesinin sığ bir kopyasını oluşturur. (Devralındığı yer: MarshalByRefObject) |
Parse() |
Geçersiz.
Geçersiz.
Geçersiz.
Geçerli bir URI için gereken tüm bölümleri içerdiğinden emin olmak için geçerli örneğin URI'sini ayrıştırıyor. |
ToString() |
Belirtilen Uri örneği için kurallı dize gösterimini alır. |
TryCreate(String, UriCreationOptions, Uri) |
Belirtilen String örneğini kullanarak yeni bir Uri oluşturur ve UriCreationOptions. |
TryCreate(String, UriKind, Uri) |
Belirtilen String örneğini ve UriKindkullanarak yeni bir Uri oluşturur. |
TryCreate(Uri, String, Uri) |
Belirtilen temel ve göreli String örneklerini kullanarak yeni bir Uri oluşturur. |
TryCreate(Uri, Uri, Uri) |
Belirtilen temel ve göreli Uri örneklerini kullanarak yeni bir Uri oluşturur. |
TryEscapeDataString(ReadOnlySpan<Char>, Span<Char>, Int32) |
Bir yayılma alanını kaçış gösterimine dönüştürmeye çalışır. |
TryFormat(Span<Char>, Int32) |
Uri örneği için kurallı dize gösterimini belirtilen yayılma alanına biçimlendirmeye çalışır. |
TryUnescapeDataString(ReadOnlySpan<Char>, Span<Char>, Int32) |
Bir yayılma alanını manzarasız gösterimine dönüştürmeye çalışır. |
Unescape(String) |
Geçersiz.
Geçersiz.
Geçersiz.
Herhangi bir kaçış dizisini, sıralanmamış gösterimleriyle değiştirerek belirtilen dizeyi dönüştürür. |
UnescapeDataString(ReadOnlySpan<Char>) |
Bir yayılma alanını, manzarasız gösterimine dönüştürür. |
UnescapeDataString(String) |
Bir dizeyi manzarasız gösterimine dönüştürür. |
İşleçler
Equality(Uri, Uri) |
İki Uri örneğin aynı değere sahip olup olmadığını belirler. |
Inequality(Uri, Uri) |
İki Uri örneğin aynı değere sahip olup olmadığını belirler. |
Belirtik Arabirim Kullanımları
IFormattable.ToString(String, IFormatProvider) |
Belirtilen biçimi kullanarak geçerli örneğin değerini biçimlendirin. |
ISerializable.GetObjectData(SerializationInfo, StreamingContext) |
Geçerli örneği seri hale getirmek için gereken verileri döndürür. |
ISpanFormattable.TryFormat(Span<Char>, Int32, ReadOnlySpan<Char>, IFormatProvider) |
Geçerli örneğin değerini sağlanan karakter aralığına biçimlendirmeye çalışır. |
Şunlara uygulanır
İş Parçacığı Güvenliği
Uri tüm üyeleri iş parçacığı açısından güvenlidir ve birden çok iş parçacığından eşzamanlı olarak kullanılabilir.
Ayrıca bkz.
- IdnElement
- IriParsingElement
- UriSection
- DnsSafeHost
- MakeRelative(Uri)
- IsWellFormedOriginalString()
- UriBuilder
- Sürüm 2.0'da System.Uri ad alanında yapılan değişiklikleri
- System.UriSystem.Uri'da uluslararası kaynak tanımlayıcı desteği
- .NET Framework'nde Ağ Programlamayı