Bagikan melalui


Uri Konstruktor

Definisi

Menginisialisasi instans baru kelas Uri.

Overload

Uri(String)

Menginisialisasi instans Uri baru kelas dengan URI yang ditentukan.

Uri(SerializationInfo, StreamingContext)
Kedaluwarsa.

Menginisialisasi instans Uri baru kelas dari instans yang ditentukan dari SerializationInfo kelas dan StreamingContext .

Uri(String, Boolean)
Kedaluwarsa.
Kedaluwarsa.
Kedaluwarsa.

Menginisialisasi instans Uri baru kelas dengan URI yang ditentukan, dengan kontrol eksplisit dari pelepasan karakter.

Uri(String, UriCreationOptions)

Menginisialisasi instans Uri baru kelas dengan URI yang ditentukan dan tambahan UriCreationOptions.

Uri(String, UriKind)

Menginisialisasi instans Uri baru kelas dengan URI yang ditentukan. Konstruktor ini memungkinkan Anda menentukan apakah string URI adalah URI relatif, URI absolut, atau tidak ditentukan.

Uri(Uri, String)

Menginisialisasi instans Uri baru kelas berdasarkan URI dasar dan string URI relatif yang ditentukan.

Uri(Uri, Uri)

Menginisialisasi instans Uri baru kelas berdasarkan kombinasi instans dasar Uri tertentu dan instans relatif Uri .

Uri(Uri, String, Boolean)
Kedaluwarsa.
Kedaluwarsa.
Kedaluwarsa.

Menginisialisasi instans Uri baru kelas berdasarkan URI dasar dan relatif yang ditentukan, dengan kontrol eksplisit pelepasan karakter.

Uri(String)

Sumber:
Uri.cs
Sumber:
Uri.cs
Sumber:
Uri.cs

Menginisialisasi instans Uri baru kelas dengan URI yang ditentukan.

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

Parameter

uriString
String

String yang mengidentifikasi sumber daya yang akan diwakili oleh Uri instans. Perhatikan bahwa alamat IPv6 dalam bentuk string harus diapit dalam tanda kurung. Misalnya, "http://[2607:f8b0:400d:c06::69]".

Pengecualian

uriStringadalah null.

Catatan: Di .NET untuk aplikasi Bursa Windows atau Pustaka Kelas Portabel, tangkap pengecualian kelas dasar, FormatException, sebagai gantinya.

uriString kosong.

-atau-

Skema yang ditentukan di uriString tidak terbentuk dengan benar. Lihat CheckSchemeName(String).

-atau-

uriString berisi terlalu banyak garis miring.

-atau-

Kata sandi yang ditentukan di uriString tidak valid.

-atau-

Nama host yang ditentukan di uriString tidak valid.

-atau-

Nama file yang ditentukan di uriString tidak valid.

-atau-

Nama pengguna yang ditentukan di uriString tidak valid.

-atau-

Nama host atau otoritas yang ditentukan di uriString tidak dapat dihentikan dengan garis miring terbalik.

-atau-

Nomor port yang ditentukan dalam uriString tidak valid atau tidak dapat diurai.

-atau-

Panjangnya uriString melebihi 65519 karakter.

-atau-

Panjang skema yang ditentukan melebihi uriString 1023 karakter.

-atau-

Ada urutan karakter yang tidak valid di uriString.

-atau-

Jalur MS-DOS yang ditentukan di uriString harus dimulai dengan c:\\.

Contoh

Contoh berikut membuat instans Uri dengan 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/")

Keterangan

Konstruktor ini membuat Uri instans dari string URI. Ini mengurai URI, menempatkannya dalam format kanonis, dan membuat pengodean escape yang diperlukan.

Konstruktor ini tidak memastikan bahwa mengacu pada Uri sumber daya yang dapat diakses.

Konstruktor ini mengasumsikan bahwa string parameter mereferensikan URI absolut dan setara dengan memanggil Uri konstruktor dengan UriKind diatur ke Absolute. Jika parameter yang string diteruskan ke konstruktor adalah URI relatif, konstruktor ini akan melempar UriFormatException.

Berlaku untuk

Uri(SerializationInfo, StreamingContext)

Sumber:
Uri.cs
Sumber:
Uri.cs
Sumber:
Uri.cs

Perhatian

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

Menginisialisasi instans Uri baru kelas dari instans yang ditentukan dari SerializationInfo kelas dan StreamingContext .

protected:
 Uri(System::Runtime::Serialization::SerializationInfo ^ serializationInfo, System::Runtime::Serialization::StreamingContext streamingContext);
protected Uri (System.Runtime.Serialization.SerializationInfo serializationInfo, System.Runtime.Serialization.StreamingContext streamingContext);
[System.Obsolete("This API supports obsolete formatter-based serialization. It should not be called or extended by application code.", DiagnosticId="SYSLIB0051", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
protected Uri (System.Runtime.Serialization.SerializationInfo serializationInfo, System.Runtime.Serialization.StreamingContext streamingContext);
new Uri : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> Uri
[<System.Obsolete("This API supports obsolete formatter-based serialization. It should not be called or extended by application code.", DiagnosticId="SYSLIB0051", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
new Uri : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> Uri
Protected Sub New (serializationInfo As SerializationInfo, streamingContext As StreamingContext)

Parameter

serializationInfo
SerializationInfo

Instans kelas yang SerializationInfo berisi informasi yang diperlukan untuk membuat serial instans baru Uri .

streamingContext
StreamingContext

Instans kelas yang StreamingContext berisi sumber aliran berseri yang terkait dengan instans baru Uri .

Atribut

Pengecualian

Parameter serializationInfo berisi null URI.

Parameter serializationInfo berisi URI yang kosong.

-atau-

Skema yang ditentukan tidak terbentuk dengan benar. Lihat CheckSchemeName(String).

-atau-

URI berisi terlalu banyak garis miring.

-atau-

Kata sandi yang ditentukan dalam URI tidak valid.

-atau-

Nama host yang ditentukan dalam URI tidak valid.

-atau-

Nama file yang ditentukan dalam URI tidak valid.

-atau-

Nama pengguna yang ditentukan dalam URI tidak valid.

-atau-

Nama host atau otoritas yang ditentukan dalam URI tidak dapat dihentikan dengan garis miring terbalik.

-atau-

Nomor port yang ditentukan dalam URI tidak valid atau tidak dapat diurai.

-atau-

Panjang URI melebihi 65519 karakter.

-atau-

Panjang skema yang ditentukan dalam URI melebihi 1023 karakter.

-atau-

Ada urutan karakter yang tidak valid dalam URI.

-atau-

Jalur MS-DOS yang ditentukan dalam URI harus dimulai dengan c:\\.

Keterangan

Konstruktor ini mengimplementasikan ISerializable antarmuka untuk Uri kelas .

Lihat juga

Berlaku untuk

Uri(String, Boolean)

Sumber:
Uri.cs
Sumber:
Uri.cs
Sumber:
Uri.cs

Perhatian

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

Perhatian

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

Perhatian

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

Menginisialisasi instans Uri baru kelas dengan URI yang ditentukan, dengan kontrol eksplisit pelepasan karakter.

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)

Parameter

uriString
String

String yang mengidentifikasi sumber daya yang akan diwakili oleh Uri instans. Perhatikan bahwa alamat IPv6 dalam bentuk string harus diapit dalam tanda kurung siku. Misalnya, "http://[2607:f8b0:400d:c06::69]".

dontEscape
Boolean

true jika uriString benar-benar lolos; jika tidak, false.

Atribut

Pengecualian

uriStringadalah null.

uriString kosong atau hanya berisi spasi.

-atau-

Skema yang ditentukan di uriString tidak valid.

-atau-

uriString berisi terlalu banyak garis miring.

-atau-

Kata sandi yang ditentukan di uriString tidak valid.

-atau-

Nama host yang ditentukan di uriString tidak valid.

-atau-

Nama file yang ditentukan di uriString tidak valid.

-atau-

Nama pengguna yang ditentukan di uriString tidak valid.

-atau-

Nama host atau otoritas yang ditentukan di uriString tidak dapat dihentikan dengan garis miring terbalik.

-atau-

Nomor port yang ditentukan di uriString tidak valid atau tidak dapat diurai.

-atau-

Panjang uriString melebihi 65519 karakter.

-atau-

Panjang skema yang ditentukan melebihi uriString 1023 karakter.

-atau-

Ada urutan karakter yang tidak valid di uriString.

-atau-

Jalur MS-DOS yang ditentukan di uriString harus dimulai dengan c:\\.

Contoh

Contoh berikut membuat instans Uri untuk URI http://www.contoso.com/Hello%20World.htm. Karena URI yang terkandung benar-benar lolos dan dalam bentuk kanonis, dontEscape parameter dapat diatur ke 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)

Keterangan

Konstruktor ini membuat Uri instans dari string URI. Ini mengurai URI dan menempatkannya dalam format kanonis.

Parameter dontEscape mengontrol apakah karakter yang dipesan diterjemahkan ke dalam urutan escape. Parameter ini harus diatur ke true hanya jika Anda yakin bahwa semua karakter yang dipesan dalam URI telah lolos. Mengatur nilai ke true untuk URI yang belum sepenuhnya lolos dapat menyebabkan perilaku yang tidak terduga. Sangat disarankan agar Anda selalu mengatur parameter ini ke false.

Jika dontEscape diatur ke false, konstruktor lolos dari karakter yang dipesan dengan memeriksa bahwa semua kemunculan persen (%) diikuti oleh urutan escape yang valid. Jika urutan karakter yang mengikuti persentase tidak valid, persentase digantikan oleh %25.

Konstruktor ini tidak memastikan bahwa mengacu pada Uri sumber daya yang dapat diakses.

Berlaku untuk

Uri(String, UriCreationOptions)

Sumber:
Uri.cs
Sumber:
Uri.cs
Sumber:
Uri.cs

Menginisialisasi instans Uri baru kelas dengan URI yang ditentukan dan tambahan 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)

Parameter

uriString
String

String yang mengidentifikasi sumber daya yang akan diwakili oleh Uri instans.

creationOptions
UriCreationOptions

Opsi yang mengontrol cara Uri pembuatan dan perilakunya.

Berlaku untuk

Uri(String, UriKind)

Sumber:
Uri.cs
Sumber:
Uri.cs
Sumber:
Uri.cs

Menginisialisasi instans Uri baru kelas dengan URI yang ditentukan. Konstruktor ini memungkinkan Anda menentukan apakah string URI adalah URI relatif, URI absolut, atau tidak ditentukan.

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)

Parameter

uriString
String

String yang mengidentifikasi sumber daya yang akan diwakili oleh Uri instans. Perhatikan bahwa alamat IPv6 dalam bentuk string harus diapit dalam tanda kurung siku. Misalnya, "http://[2607:f8b0:400d:c06::69]".

uriKind
UriKind

Menentukan apakah string URI adalah URI relatif, URI absolut, atau tidak ditentukan.

Pengecualian

uriKind tidak valid.

uriStringadalah null.

Catatan: Di .NET untuk aplikasi Bursa Windows atau Pustaka Kelas Portabel, tangkap pengecualian kelas dasar, FormatException, sebagai gantinya.

uriString berisi URI relatif dan uriKind adalah Absolute.

atau

uriString berisi URI absolut dan uriKind merupakan Relative.

atau

uriString kosong.

-atau-

Skema yang ditentukan dalam uriString tidak terbentuk dengan benar. Lihat CheckSchemeName(String).

-atau-

uriString berisi terlalu banyak garis miring.

-atau-

Kata sandi yang ditentukan di uriString tidak valid.

-atau-

Nama host yang ditentukan di uriString tidak valid.

-atau-

Nama file yang ditentukan di uriString tidak valid.

-atau-

Nama pengguna yang ditentukan di uriString tidak valid.

-atau-

Nama host atau otoritas yang ditentukan di uriString tidak dapat dihentikan dengan garis miring terbalik.

-atau-

Nomor port yang ditentukan di uriString tidak valid atau tidak dapat diurai.

-atau-

Panjang uriString melebihi 65519 karakter.

-atau-

Panjang skema yang ditentukan melebihi uriString 1023 karakter.

-atau-

Ada urutan karakter yang tidak valid di uriString.

-atau-

Jalur MS-DOS yang ditentukan di uriString harus dimulai dengan c:\\.

Keterangan

URI relatif dan absolut memiliki batasan yang berbeda pada formatnya. Misalnya, URI relatif tidak memerlukan skema atau otoritas. Nilai yang Anda tentukan di uriKind harus cocok dengan jenis URI yang diteruskan di uriString. Namun, jika RelativeOrAbsolute ditentukan, string URI bisa relatif atau absolut.

Berlaku untuk

Uri(Uri, String)

Sumber:
Uri.cs
Sumber:
Uri.cs
Sumber:
Uri.cs

Menginisialisasi instans Uri baru kelas berdasarkan URI dasar yang ditentukan dan string URI relatif.

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)

Parameter

baseUri
Uri

URI dasar.

relativeUri
String

URI relatif untuk ditambahkan ke URI dasar.

Pengecualian

baseUriadalah null.

baseUri bukan instans absolut Uri .

Catatan: Di .NET untuk aplikasi Bursa Windows atau Pustaka Kelas Portabel, tangkap pengecualian kelas dasar, FormatException, sebagai gantinya.

URI yang dibentuk dengan menggabungkan baseUri dan relativeUri kosong atau hanya berisi spasi.

-atau-

Skema yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri tidak valid.

-atau-

URI yang dibentuk dengan menggabungkan baseUri dan relativeUri berisi terlalu banyak garis miring.

-atau-

Kata sandi yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri tidak valid.

-atau-

Nama host yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri tidak valid.

-atau-

Nama file yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri tidak valid.

-atau-

Nama pengguna yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri tidak valid.

-atau-

Nama host atau otoritas yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri tidak dapat dihentikan dengan garis miring terbalik.

-atau-

Nomor port yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri tidak valid atau tidak dapat diurai.

-atau-

Panjang URI yang dibentuk dengan menggabungkan baseUri dan relativeUri melebihi 65519 karakter.

-atau-

Panjang skema yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri melebihi 1023 karakter.

-atau-

Ada urutan karakter yang tidak valid dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri.

-atau-

Jalur MS-DOS yang ditentukan di uriString harus dimulai dengan c:\\.

Contoh

Contoh berikut membuat instans Uri baru kelas dengan menggabungkan URI http://www.contoso.com relatif dan catalog/shownew.htm membentuk URI http://www.contoso.com/catalog/shownew.htmabsolut .

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())

Keterangan

Konstruktor ini membuat instans Uri dengan menggabungkan baseUri dan relativeUri. Jika relativeUri adalah URI absolut (berisi skema, nama host, dan nomor port opsional), Uri instans dibuat hanya relativeUrimenggunakan .

baseUri Jika memiliki bagian relatif (seperti /api), maka bagian relatif harus dihentikan dengan garis miring, (seperti /api/), jika bagian relatif dari baseUri akan dipertahankan Uridalam konstruksi .

Selain itu, jika relativeUri dimulai dengan garis miring, maka itu akan menggantikan bagian relatif dari baseUri

Konstruktor ini tidak memastikan bahwa mengacu pada Uri sumber daya yang dapat diakses.

Berlaku untuk

Uri(Uri, Uri)

Sumber:
Uri.cs
Sumber:
Uri.cs
Sumber:
Uri.cs

Menginisialisasi instans Uri baru kelas berdasarkan kombinasi instans dasar Uri tertentu dan instans relatif Uri .

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)

Parameter

baseUri
Uri

Absolut Uri yang merupakan dasar untuk instans baru Uri .

relativeUri
Uri

Instans relatif Uri yang dikombinasikan dengan baseUri.

Pengecualian

baseUri bukan instans absolut Uri .

baseUriadalah null.

baseUri bukan instans absolut Uri .

Catatan: Di .NET untuk aplikasi Bursa Windows atau Pustaka Kelas Portabel, tangkap pengecualian kelas dasar, FormatException, sebagai gantinya.

URI yang dibentuk dengan menggabungkan baseUri dan relativeUri kosong atau hanya berisi spasi.

-atau-

Skema yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri tidak valid.

-atau-

URI yang dibentuk dengan menggabungkan baseUri dan relativeUri berisi terlalu banyak garis miring.

-atau-

Kata sandi yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri tidak valid.

-atau-

Nama host yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri tidak valid.

-atau-

Nama file yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri tidak valid.

-atau-

Nama pengguna yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri tidak valid.

-atau-

Nama host atau otoritas yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri tidak dapat dihentikan dengan garis miring terbalik.

-atau-

Nomor port yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri tidak valid atau tidak dapat diurai.

-atau-

Panjang URI yang dibentuk dengan menggabungkan baseUri dan relativeUri melebihi 65519 karakter.

-atau-

Panjang skema yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri melebihi 1023 karakter.

-atau-

Ada urutan karakter yang tidak valid dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri.

-atau-

Jalur MS-DOS yang ditentukan di uriString harus dimulai dengan c:\\.

Contoh

Contoh ini membuat instans absolut Uri , absoluteUri, dan instans relatif Uri , relativeUri. Instans baru Uri , combinedUri, kemudian dibuat dari dua instans ini.

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

Keterangan

Konstruktor ini membuat instans baru Uri dengan menggabungkan instans absolut Uri , , baseUridengan instans relatif Uri , relativeUri. Jika relativeUri adalah instans absolut Uri (berisi skema, nama host, dan nomor port opsional), Uri instans dibuat hanya relativeUrimenggunakan .

baseUri Jika memiliki bagian relatif (seperti /api), maka bagian relatif harus dihentikan dengan garis miring, (seperti /api/), jika bagian relatif dari baseUri akan dipertahankan Uridalam konstruksi .

Selain itu, jika relativeUri dimulai dengan garis miring, maka itu akan menggantikan bagian relatif dari baseUri

Konstruktor ini tidak memastikan bahwa mengacu pada Uri sumber daya yang dapat diakses.

Berlaku untuk

Uri(Uri, String, Boolean)

Sumber:
Uri.cs
Sumber:
Uri.cs
Sumber:
Uri.cs

Perhatian

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

Perhatian

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

Perhatian

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

Menginisialisasi instans Uri baru kelas berdasarkan URI dasar dan relatif yang ditentukan, dengan kontrol eksplisit pelepasan karakter.

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)

Parameter

baseUri
Uri

URI dasar.

relativeUri
String

URI relatif untuk ditambahkan ke URI dasar.

dontEscape
Boolean

true jika uriString benar-benar lolos; jika tidak, false.

Atribut

Pengecualian

baseUriadalah null.

baseUri bukan instans absolut Uri .

URI yang dibentuk dengan menggabungkan baseUri dan relativeUri kosong atau hanya berisi spasi.

-atau-

Skema yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri tidak valid.

-atau-

URI yang dibentuk dengan menggabungkan baseUri dan relativeUri berisi terlalu banyak garis miring.

-atau-

Kata sandi yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri tidak valid.

-atau-

Nama host yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri tidak valid.

-atau-

Nama file yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri tidak valid.

-atau-

Nama pengguna yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri tidak valid.

-atau-

Nama host atau otoritas yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri tidak dapat dihentikan dengan garis miring terbalik.

-atau-

Nomor port yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri tidak valid atau tidak dapat diurai.

-atau-

Panjang URI yang dibentuk dengan menggabungkan baseUri dan relativeUri melebihi 65519 karakter.

-atau-

Panjang skema yang ditentukan dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri melebihi 1023 karakter.

-atau-

Ada urutan karakter yang tidak valid dalam URI yang dibentuk dengan menggabungkan baseUri dan relativeUri.

-atau-

Jalur MS-DOS yang ditentukan di uriString harus dimulai dengan c:\\.

Contoh

Contoh berikut membuat instans Uri baru kelas dengan menggabungkan URI http://www.contoso.com relatif dan Hello%20World.htm membentuk URI absolut.

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)

Keterangan

Konstruktor ini membuat instans Uri dengan menggabungkan baseUri dan relativeUri. Jika URI yang diteruskan relativeUri adalah URI absolut (berisi skema, nama host, dan secara opsional nomor port), Uri instans dibuat hanya relativeUrimenggunakan .

Parameter dontEscape mengontrol apakah karakter yang dipesan diterjemahkan ke dalam urutan escape. Parameter ini harus diatur ke true hanya jika Anda yakin bahwa semua karakter yang dipesan dalam URI telah lolos. Mengatur nilai ke true untuk URI yang belum sepenuhnya lolos dapat menyebabkan perilaku yang tidak terduga. Sangat disarankan agar Anda selalu mengatur parameter ini ke false. Jika dontEscape diatur ke false, konstruktor lolos dari karakter yang dipesan dengan memeriksa bahwa semua kemunculan persen (%) diikuti oleh urutan escape yang valid. Jika urutan karakter yang mengikuti persentase tidak valid, persentase digantikan oleh %25.

Konstruktor ini tidak memastikan bahwa mengacu pada Uri sumber daya yang dapat diakses.

Catatan Bagi Pemanggil

Karena masalah keamanan, aplikasi Anda tidak boleh memanggil konstruktor ini dengan string URI dari sumber yang tidak tepercaya dan dengan dontEscape diatur ke true. Secara bergantian, Anda dapat memeriksa string URI untuk validitas dengan memanggil IsWellFormedOriginalString() metode sebelum memanggil konstruktor ini.

Berlaku untuk