Bagikan melalui


PackageStore Kelas

Definisi

Mewakili kumpulan instans Package khusus aplikasi yang digunakan dalam kombinasi dengan PackWebRequest.

public ref class PackageStore abstract sealed
[System.Security.SecurityCritical(System.Security.SecurityCriticalScope.Everything)]
public static class PackageStore
public static class PackageStore
[<System.Security.SecurityCritical(System.Security.SecurityCriticalScope.Everything)>]
type PackageStore = class
type PackageStore = class
Public Class PackageStore
Warisan
PackageStore
Atribut

Keterangan

PackageStore mendefinisikan kumpulan referensi paket yang terbuka dan aktif dalam aplikasi. Paket yang ditambahkan ke PackageStore diakses adalah dengan nilai URI kuncinya. PackageStore mendukung tiga penggunaan umum:

  1. Mengakses data PackagePart melalui PackWebRequest.

  2. Aplikasi yang mendapatkan instans Package diberikan URI paket.

  3. Mengakses paket yang dibuat dan disimpan dalam MemoryStream.

Untuk meningkatkan performa dan meminimalkan overhead operasi buka/tutup file berulang, PackageStore digunakan untuk mengelola instans paket yang diakses oleh PackWebRequest dan langsung oleh aplikasi. Saat mengakses data dalam paket, alamat PackagePackagePartUri yang diminta pertama kali diperiksa untuk melihat apakah paket sudah ditentukan dan dibuka di PackageStore. Jika paket didefinisikan sebagai terbuka di PackageStore, bagian yang diminta dapat diakses secara langsung tanpa berulang kali membuka dan menutup paket untuk setiap permintaan.

Jika aplikasi Anda membuka paket dengan Package.Open, AddPackage dapat dipanggil untuk menambahkan paket ke PackageStore. RemovePackage nanti harus dipanggil untuk menghapus paket dari PackageStore sebelum memanggil Package.Close.

Paket XPS yang dibuka dengan konstruktor XpsDocument secara otomatis ditambahkan dan dihapus dari PackageStore saat dokumen dibuat dan dibuang. (Anda tidak perlu memanggil AddPackage atau RemovePackage secara terpisah untuk paket XPS yang dibuka dengan konstruktor XpsDocument.)

Izin I/O file dari paket yang diakses melalui PackageStore tetap sama dengan izin I/O yang ditetapkan pada paket saat dibuka. PackageStore hanya menyediakan referensi ke paket yang telah ditambahkan penyimpanan. Terserah aplikasi untuk membuka, memperbarui, dan menutup setiap paket dengan benar.

Paket yang ditambahkan ke PackageStore dapat diakses di lingkungan multithread ketika digunakan dalam kombinasi dengan pengurai XAML seperti XamlReader.Load. Saat beroperasi di lingkungan multithreaded, aplikasi harus mengunci paket sebelum akses.

Metode

AddPackage(Uri, Package)

Menambahkan Package ke penyimpanan.

GetPackage(Uri)

Mengembalikan Package dengan URI tertentu dari penyimpanan.

RemovePackage(Uri)

Menghapus Package dengan URI tertentu dari penyimpanan.

Berlaku untuk

Lihat juga