Uri Kelas

Definisi

Mendefinisikan objek yang mewakili nilai Pengidentifikasi Sumber Daya Seragam (URI) dan mengurainya menjadi komponen. Objek Uri digunakan oleh banyak API Windows Runtime lainnya yang belum tentu terbatas pada skenario browser web.

.NET Saat memprogram dengan .NET, jenis ini disembunyikan dan pengembang harus menggunakan System.Uri. Lihat Keterangan.

public ref class Uri sealed : IStringable
/// [Windows.Foundation.Metadata.Activatable(Windows.Foundation.IUriRuntimeClassFactory, 65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class Uri final : IStringable
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(Windows.Foundation.IUriRuntimeClassFactory, 65536, "Windows.Foundation.UniversalApiContract")]
class Uri final : IStringable
[Windows.Foundation.Metadata.Activatable(typeof(Windows.Foundation.IUriRuntimeClassFactory), 65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class Uri : IStringable
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(typeof(Windows.Foundation.IUriRuntimeClassFactory), 65536, "Windows.Foundation.UniversalApiContract")]
public sealed class Uri : IStringable
function Uri(baseUri, relativeUri)
Public NotInheritable Class Uri
Implements IStringable
Warisan
Object IInspectable Uri
Atribut
Penerapan

Persyaratan Windows

Rangkaian perangkat
Windows 10 (diperkenalkan dalam 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v1.0)

Contoh

Contoh ini membuat objek Uri yang mewakili Pengidentifikasi Sumber Daya Seragam (URI) yang menggunakan protokol http untuk mengakses situs web.

// The URI string
var uriToLaunch = "http://www.bing.com";

// Create a Uri object from the URI string
var uri = new Windows.Foundation.Uri(uriToLaunch);
// The URI string.
std::wstring uriToLaunch{ L"http://www.bing.com" };

// Create a Uri object from the URI string.
Windows::Foundation::Uri uri{ uriToLaunch };
// The URI string
var uriToLaunch = L"http://www.bing.com";

// Create a Uri object from the URI string
auto uri = ref new Windows::Foundation::Uri(uriToLaunch);

Contoh ini membuat Uri yang menggunakan protokol ms-appx untuk mengakses file gambar dalam paket aplikasi.

// The URI string
var uriImage = "ms-appx:///images/SecondaryTileDefault-sdk.png";

// Create a Uri object from the URI string
var uri = new Windows.Foundation.Uri(uriImage);
// The URI string.
std::wstring uriImage{ L"ms-appx:///images/SecondaryTileDefault-sdk.png" };

// Create a Uri object from the URI string.
Windows::Foundation::Uri uri{ uriImage };
// The URI string
var uriImage = ;

// Create a Uri object from the URI string
auto uri = ref new Windows::Foundation::Uri(uriImage);

Contoh ini membuat Uri yang menggunakan protokol ms-appdata untuk mengakses file di penyimpanan data aplikasi lokal untuk aplikasi Anda.

// The URI string
var uriFile = "ms-appdata:///local/file.ext";

// Create a Uri object from the URI string
var uri = new Windows.Foundation.Uri(uriFile);
// The URI string.
std::wstring uriFile{ L"ms-appdata:///local/file.ext" };

// Create a Uri object from the URI string.
Windows::Foundation::Uri uri{ uriFile };
// The URI string
var uriFile = "ms-appdata:///local/file.ext";

// Create a Uri object from the URI string
auto uri = ref new Windows::Foundation::Uri(uriFile);

Keterangan

Penting

Saat pemrograman dengan .NET, kelas ini tersembunyi dan pengembang harus menggunakan kelas System.Uri , yang menggunakan aturan RFC 3987 untuk mengodekan dan mendekode Pengidentifikasi Sumber Daya Seragam (URI). Kelas Windows.Foundation.Uri tidak mengodekan karakter non-ASCII persen dalam Pengidentifikasi Sumber Daya Seragam (URI) di mana skema mengacu pada jalur file Windows (seperti ms-appx:). Windows.Foundation.Uri juga menginterpretasikan pengodean persen menggunakan halaman kode pengguna saat ini.

Anggota System.Uri yang tersedia serupa tetapi berbeda dari anggota Windows.Foundation.Uri, dan beberapa perilaku dasar yang dijelaskan dalam topik ini berbeda. Untuk informasi selengkapnya tentang perbedaan pengodean dan anggota apa yang tersedia, lihat System.Uri (terutama Keterangan).

Berikut adalah perincian bagian dari contoh Pengidentifikasi Sumber Daya Seragam (URI):

scheme://username:password@host:port/path. ekstensi? Query#Fragmen

Contohnya:

http://msdn.microsoft.com/library/windows/apps/windows.foundation.uri.aspx?cs-save-lang=1&cs-lang=cpp#code-snippet-1

Dalam contoh ini:

  • skema adalah http
  • host adalah msdn.microsoft.com
  • domain adalah microsoft.com (subset host)
  • ekstensi adalah aspx
  • kueri adalah cs-save-lang=1&cs-lang=cpp
  • fragmen adalah code-snippet-1

Catatan

nama pengguna:password@ sebelum host terutama relevan untuk Pengidentifikasi Sumber Daya Seragam (URI) Protokol Transfer File (FTP). URI Protokol Transfer File (FTP) memiliki dukungan terbatas di Windows Runtime; lihat "Mentransfer data di latar belakang" (HTML atau XAML).

Penting

Tidak semua skema yang mungkin dapat digunakan oleh aplikasi Windows Runtime. Terutama, file: skema diblokir. Dimungkinkan untuk membuat objek Uri yang menggunakan skema yang tidak akan didukung aplikasi Windows Runtime, dan Anda diblokir saat mencoba menerapkan Uri tersebut sebagai nilai input untuk panggilan API, bukan saat membuat objek.

Skema URI yang khusus untuk aplikasi Windows Runtime

Windows Runtime memiliki beberapa skema yang unik untuk aplikasi Windows Runtime, dan ini mengacu pada aset yang merupakan bagian dari aplikasi. Umumnya, skema ini adalah apa yang dapat Anda gunakan alih-alih file: skema, untuk merujuk ke file yang dikemas dan aset lain yang telah Anda sertakan sebagai bagian dari paket aplikasi Anda, atau aset yang dikaitkan dengan aplikasi yang diinstal:

Masing-masing skema ini mengabaikan banyak bagian komponen dari Pengidentifikasi Sumber Daya Seragam (URI) yang ditujukan untuk skema lain (misalnya, Kueri dan Fragmen). Selain itu, komponen tertentu secara eksplisit tidak diizinkan dan menyebabkan nilai Uri menggunakan skema ini diperlakukan sebagai input yang tidak valid (misalnya nilai UserName dan Password dalam ms-appx: Skema Uri akan membatalkan Uri). Untuk informasi selengkapnya, lihat skema URI.

Dalam kebanyakan kasus, Anda menggunakan skema ini dengan tiga garis miring (misalnya: ms-appx:///page.html), yang mereferensikan akar aplikasi saat ini, menggunakan aplikasi saat ini sebagai otoritas. Penggunaan dengan dua garis miring dimungkinkan, tetapi mungkin memerlukan penentuan nama otoritas secara eksplisit. Penggunaan dengan dua garis miring dapat merujuk ke dependensi paket sebagai otoritas, atau dapat merujuk ke lokasi relatif dalam aplikasi. Untuk informasi selengkapnya, lihat skema URI.

URI absolut dan relatif

Pada tingkat kode, Windows Runtime tidak mendukung Pengidentifikasi Sumber Daya Seragam (URI) relatif. Semua objek Uri yang Anda buat harus mewakili Pengidentifikasi Sumber Daya Seragam (URI) absolut. Skema yang tercantum di bagian sebelumnya sebenarnya adalah Pengidentifikasi Sumber Daya Seragam (URI) absolut, karena host dan otoritas implisit untuk setiap skema dan sisa jalur dievaluasi berdasarkan otoritas tersebut.

Meluncurkan aplikasi menurut skema URI

Skema Pengidentifikasi Sumber Daya Seragam (URI) dari nilai Uri dapat digunakan untuk meluncurkan aplikasi lain yang terkait dengan skema tertentu tersebut. Untuk informasi selengkapnya, lihat Meluncurkan aplikasi default untuk URI).

Konstruktor

Uri(String)

Menginisialisasi objek Uri baru dari string Pengidentifikasi Sumber Daya Seragam (URI) yang ditentukan. Menginisialisasi Uri juga mengurai string dan mengisi properti Uri yang mewakili komponen Pengidentifikasi Sumber Daya Seragam (URI).

Uri(String, String)

Menginisialisasi Uri baru dengan menggabungkan Pengidentifikasi Sumber Daya Seragam (URI) dasar dan Pengidentifikasi Sumber Daya Seragam (URI) relatif. Menginisialisasi Uri juga mengurai string gabungan dan mengisi properti Uri yang mewakili komponen Pengidentifikasi Sumber Daya Seragam (URI).

Properti

AbsoluteCanonicalUri

Mendapatkan representasi yang sepenuhnya sesuai dengan RFC kanonis dari URI saat ini.

AbsoluteUri

Mendapatkan seluruh URI non-kanonis (Ini non-kanonis karena mungkin benar-benar IRI, sesuai perilaku pengodean Windows.Foundation.Uri ; lihat Komentar.).

DisplayIri

Mendapatkan karakter unicode yang didekodekan yang membentuk URI saat ini.

DisplayUri

Mendapatkan representasi Pengidentifikasi Sumber Daya Seragam (URI) yang dapat digunakan untuk tujuan tampilan.

Domain

Mendapatkan komponen nama domain, termasuk domain tingkat atas, dari Pengidentifikasi Sumber Daya Seragam (URI).

Extension

Mendapatkan ekstensi nama file dari sumber daya yang dirujuk dalam Uri.

Fragment

Mendapatkan teks setelah penanda fragmen (#), termasuk penanda fragmen itu sendiri.

Host

Mendapatkan nama domain yang sepenuhnya memenuhi syarat.

Password

Mendapatkan komponen kata sandi pengidentifikasi Sumber Daya Seragam (URI) seperti yang disimpan dalam instans Uri ini.

Path

Mendapatkan jalur dan komponen nama sumber daya dari Pengidentifikasi Sumber Daya Seragam (URI) seperti yang disimpan dalam instans Uri ini.

Port

Mendapatkan komponen nomor port pengidentifikasi Sumber Daya Seragam (URI) seperti yang disimpan dalam instans Uri ini

Query

Mendapatkan komponen string kueri dari Pengidentifikasi Sumber Daya Seragam (URI) seperti yang disimpan dalam instans Uri ini.

QueryParsed

Mendapatkan string kueri Pengidentifikasi Sumber Daya Seragam (URI) yang diurai.

RawUri

Mendapatkan seluruh string Pengidentifikasi Sumber Daya Seragam (URI) asli seperti yang digunakan untuk membuat objek Uri ini, sebelum mengurai, dan tanpa pengodean yang diterapkan.

SchemeName

Mendapatkan komponen nama skema protokol dari Pengidentifikasi Sumber Daya Seragam (URI) seperti yang disimpan dalam instans Uri ini

Suspicious

Mendapatkan nilai yang menunjukkan apakah penguraian menentukan bahwa Pengidentifikasi Sumber Daya Seragam (URI) tidak terbentuk dengan baik.

UserName

Mendapatkan komponen nama pengguna dari Pengidentifikasi Sumber Daya Seragam (URI) seperti yang disimpan dalam instans Uri ini.

Metode

CombineUri(String)

Menambahkan Pengidentifikasi Sumber Daya Seragam (URI) yang ditentukan ke Uri saat ini.

Equals(Uri)

Menentukan apakah objek Uri yang ditentukan sama dengan objek Uri saat ini.

EscapeComponent(String)

Mengonversi string Pengidentifikasi Sumber Daya Seragam (URI) ke representasi yang lolos.

ToString()

Mendapatkan representasi string kanonis untuk Uri saat ini.

UnescapeComponent(String)

Mengonversi string yang ditentukan dengan mengganti urutan escape apa pun dengan representasi yang tidak dilewati.

Berlaku untuk

Lihat juga