Uri Konstruktor
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menginisialisasi instans baru kelas Uri.
Overload
Uri(String) |
Menginisialisasi instans baru kelas Uri dengan URI yang ditentukan. |
Uri(SerializationInfo, StreamingContext) |
Kedaluwarsa.
Menginisialisasi instans baru kelas Uri dari instans yang ditentukan dari kelas SerializationInfo dan StreamingContext. |
Uri(String, Boolean) |
Kedaluwarsa.
Kedaluwarsa.
Kedaluwarsa.
Menginisialisasi instans baru kelas Uri dengan URI yang ditentukan, dengan kontrol eksplisit dari pelepasan karakter. |
Uri(String, UriCreationOptions) |
Menginisialisasi instans baru kelas Uri dengan URI yang ditentukan dan UriCreationOptionstambahan . |
Uri(String, UriKind) |
Menginisialisasi instans baru kelas Uri 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 baru kelas Uri berdasarkan URI dasar yang ditentukan dan string URI relatif. |
Uri(Uri, Uri) |
Menginisialisasi instans baru kelas Uri berdasarkan kombinasi instans Uri dasar tertentu dan instans Uri relatif. |
Uri(Uri, String, Boolean) |
Kedaluwarsa.
Kedaluwarsa.
Kedaluwarsa.
Menginisialisasi instans baru kelas Uri berdasarkan URI dasar dan relatif yang ditentukan, dengan kontrol eksplisit dari pelepasan karakter. |
Uri(String)
- Sumber:
- Uri.cs
- Sumber:
- Uri.cs
- Sumber:
- Uri.cs
Menginisialisasi instans baru kelas Uri 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 instans Uri. Perhatikan bahwa alamat IPv6 dalam bentuk string harus diapit dalam tanda kurung. Misalnya, "http://[2607:f8b0:400d:c06::69]".
Pengecualian
uriString
null
.
Catatan: Di
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 dalam uriString
tidak valid.
-atau-
Nama host yang ditentukan dalam uriString
tidak valid.
-atau-
Nama file yang ditentukan dalam uriString
tidak valid.
-atau-
Nama pengguna yang ditentukan dalam uriString
tidak valid.
-atau-
Nama host atau otoritas yang ditentukan dalam uriString
tidak dapat dihentikan dengan garis miring terbalik.
-atau-
Nomor port yang ditentukan dalam uriString
tidak valid atau tidak dapat diurai.
-atau-
Panjang uriString
melebihi 65519 karakter.
-atau-
Panjang skema yang ditentukan dalam uriString
melebihi 1023 karakter.
-atau-
Ada urutan karakter yang tidak valid dalam uriString
.
-atau-
Jalur MS-DOS yang ditentukan dalam 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 instans Uri dari string URI. Ini mengurai URI, menempatkannya dalam format kanonis, dan membuat pengodean escape yang diperlukan.
Konstruktor ini tidak memastikan bahwa Uri mengacu pada sumber daya yang dapat diakses.
Konstruktor ini mengasumsikan bahwa parameter string
mereferensikan URI absolut dan setara dengan memanggil konstruktor Uri dengan UriKind diatur ke Absolute. Jika parameter string
yang diteruskan ke konstruktor adalah URI relatif, konstruktor ini akan melemparkan 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 baru kelas Uri dari instans yang ditentukan dari kelas SerializationInfo 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 SerializationInfo yang berisi informasi yang diperlukan untuk membuat serialisasi instans Uri baru.
- streamingContext
- StreamingContext
Instans kelas StreamingContext yang berisi sumber aliran berseri yang terkait dengan instans Uri baru.
- Atribut
Pengecualian
Parameter serializationInfo
berisi URI null
.
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 antarmuka ISerializable untuk kelas Uri.
Lihat juga
- Serialisasi XML dan SOAP
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 baru kelas Uri dengan URI yang ditentukan, dengan kontrol eksplisit dari 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 instans Uri. Perhatikan bahwa alamat IPv6 dalam bentuk string harus diapit dalam tanda kurung. Misalnya, "http://[2607:f8b0:400d:c06::69]".
- dontEscape
- Boolean
true
jika uriString
benar-benar lolos; jika tidak, false
.
- Atribut
Pengecualian
uriString
null
.
uriString
kosong atau hanya berisi spasi.
-atau-
Skema yang ditentukan dalam uriString
tidak valid.
-atau-
uriString
berisi terlalu banyak garis miring.
-atau-
Kata sandi yang ditentukan dalam uriString
tidak valid.
-atau-
Nama host yang ditentukan dalam uriString
tidak valid.
-atau-
Nama file yang ditentukan dalam uriString
tidak valid.
-atau-
Nama pengguna yang ditentukan dalam uriString
tidak valid.
-atau-
Nama host atau otoritas yang ditentukan dalam uriString
tidak dapat dihentikan dengan garis miring terbalik.
-atau-
Nomor port yang ditentukan dalam uriString
tidak valid atau tidak dapat diurai.
-atau-
Panjang uriString
melebihi 65519 karakter.
-atau-
Panjang skema yang ditentukan dalam uriString
melebihi 1023 karakter.
-atau-
Ada urutan karakter yang tidak valid dalam uriString
.
-atau-
Jalur MS-DOS yang ditentukan dalam 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, parameter dontEscape
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 instans Uri 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 diloloskan. 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 setelah persen tidak valid, persentase digantikan oleh %25.
Konstruktor ini tidak memastikan bahwa Uri mengacu pada sumber daya yang dapat diakses.
Berlaku untuk
Uri(String, UriCreationOptions)
- Sumber:
- Uri.cs
- Sumber:
- Uri.cs
- Sumber:
- Uri.cs
Menginisialisasi instans baru kelas Uri dengan URI yang ditentukan dan UriCreationOptionstambahan .
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
- creationOptions
- UriCreationOptions
Opsi yang mengontrol bagaimana Uri dibuat dan berulah.
Berlaku untuk
Uri(String, UriKind)
- Sumber:
- Uri.cs
- Sumber:
- Uri.cs
- Sumber:
- Uri.cs
Menginisialisasi instans baru kelas Uri 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 instans Uri. Perhatikan bahwa alamat IPv6 dalam bentuk string harus diapit dalam tanda kurung. 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.
uriString
null
.
Catatan: Di
uriString
berisi URI relatif dan uriKind
Absolute.
atau
uriString
berisi URI absolut dan uriKind
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 dalam uriString
tidak valid.
-atau-
Nama host yang ditentukan dalam uriString
tidak valid.
-atau-
Nama file yang ditentukan dalam uriString
tidak valid.
-atau-
Nama pengguna yang ditentukan dalam uriString
tidak valid.
-atau-
Nama host atau otoritas yang ditentukan dalam uriString
tidak dapat dihentikan dengan garis miring terbalik.
-atau-
Nomor port yang ditentukan dalam uriString
tidak valid atau tidak dapat diurai.
-atau-
Panjang uriString
melebihi 65519 karakter.
-atau-
Panjang skema yang ditentukan dalam uriString
melebihi 1023 karakter.
-atau-
Ada urutan karakter yang tidak valid dalam uriString
.
-atau-
Jalur MS-DOS yang ditentukan dalam 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 dalam uriKind
harus cocok dengan jenis URI yang diteruskan dalam 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 baru kelas Uri 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
baseUri
null
.
baseUri
bukan instans Uri absolut.
Catatan: Di
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 dalam baseUri
harus dimulai dengan c:\\.
Contoh
Contoh berikut membuat instans baru kelas Uri dengan menggabungkan URI relatif http://www.contoso.com
dan catalog/shownew.htm
untuk membentuk URI absolut 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())
Keterangan
Konstruktor ini membuat instans Uri dengan menggabungkan baseUri
dan relativeUri
. Jika relativeUri
adalah URI absolut (berisi skema, nama host, dan nomor port opsional), instans Uri dibuat hanya menggunakan relativeUri
.
Jika baseUri
memiliki bagian relatif (seperti /api
), maka bagian relatif harus dihentikan dengan garis miring, (seperti /api/
), jika bagian relatif dari baseUri
akan dipertahankan dalam Uriyang dibangun.
Selain itu, jika relativeUri
dimulai dengan garis miring, maka itu akan menggantikan bagian relatif dari baseUri
Konstruktor ini tidak memastikan bahwa Uri mengacu pada sumber daya yang dapat diakses.
Berlaku untuk
Uri(Uri, Uri)
- Sumber:
- Uri.cs
- Sumber:
- Uri.cs
- Sumber:
- 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)
Parameter
Pengecualian
baseUri
bukan instans Uri absolut.
baseUri
null
.
baseUri
bukan instans Uri absolut.
Catatan: Di
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 dalam baseUri
harus dimulai dengan c:\\.
Contoh
Contoh ini membuat instans Uri absolut, absoluteUri
, dan instans Uri relatif, relativeUri
. Instans Uri baru, 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 Uri baru dengan menggabungkan instans Uri absolut, baseUri
, dengan instans Uri relatif, relativeUri
. Jika relativeUri
adalah instans Uri absolut (berisi skema, nama host, dan secara opsional nomor port), instans Uri dibuat hanya menggunakan relativeUri
.
Jika baseUri
memiliki bagian relatif (seperti /api
), maka bagian relatif harus dihentikan dengan garis miring, (seperti /api/
), jika bagian relatif dari baseUri
akan dipertahankan dalam Uriyang dibangun.
Selain itu, jika relativeUri
dimulai dengan garis miring, maka itu akan menggantikan bagian relatif dari baseUri
Konstruktor ini tidak memastikan bahwa Uri mengacu pada 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 baru kelas Uri berdasarkan URI dasar dan relatif yang ditentukan, dengan kontrol eksplisit dari 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 baseUri
dan relativeUri
benar-benar lolos; jika tidak, false
.
- Atribut
Pengecualian
baseUri
null
.
baseUri
bukan instans Uri absolut.
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 dalam baseUri
harus dimulai dengan c:\\.
Contoh
Contoh berikut membuat instans baru kelas Uri dengan menggabungkan URI relatif http://www.contoso.com
dan Hello%20World.htm
untuk 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), instans Uri dibuat hanya menggunakan relativeUri
.
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 diloloskan. 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 setelah persen tidak valid, persentase digantikan oleh %25.
Konstruktor ini tidak memastikan bahwa Uri mengacu pada 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 metode IsWellFormedOriginalString() sebelum memanggil konstruktor ini.