Aracılığıyla paylaş


PackageStore Sınıf

Tanım

PackWebRequestile birlikte kullanılan uygulamaya özgü Package örnekleri koleksiyonunu temsil eder.

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
Devralma
PackageStore
Öznitelikler

Açıklamalar

PackageStore, uygulamada açık ve etkin olan bir paket başvuru koleksiyonlarını tanımlar. PackageStore eklenen paketlere anahtar URI değeri tarafından erişilir. PackageStore üç yaygın kullanım desteği vardır:

  1. PackWebRequestaracılığıyla PackagePart verilere erişme.

  2. Paketin URI'sine göre bir Package örneğini alan uygulama.

  3. MemoryStreamoluşturulan ve depolanan paketlere erişme.

Performansı artırmak ve yinelenen dosya açma/kapatma işlemlerinin yükünü en aza indirmek için PackageStore, PackWebRequest ve doğrudan uygulama tarafından erişilen paket örneklerini yönetmek için kullanılır. Paketteki verilere erişirken, istenen PackagePartUriPackage adresi ilk olarak paketin PackageStoretanımlanıp tanımlanmadığını ve açık olup olmadığını kontrol eder. Paket PackageStoreaçık olarak tanımlanmışsa, istenen bölümlere her istek için paketi tekrar tekrar açıp kapatmadan doğrudan erişilebilir.

Uygulamanız Package.Openiçeren bir paket açarsa, paketi PackageStoreeklemek için AddPackage çağrılabilir. RemovePackage daha sonra Package.Closeçağrılmadan önce paketi PackageStore kaldırmak için çağrılmalıdır.

XpsDocument oluşturucuyla açılan XPS paketleri, belge oluşturulduğunda ve atıldığında otomatik olarak eklenir ve PackageStore kaldırılır. (XpsDocument oluşturucularla açılan XPS paketleri için AddPackage veya RemovePackage ayrı olarak çağırmanız gerekmez.)

PackageStore üzerinden erişilen paketin dosya G/Ç izinleri, açıldığında pakette ayarlanan G/Ç izinleriyle aynı kalır. PackageStore yalnızca depoya eklenen paketlere başvurular sağlar. Her paketi doğru şekilde açmak, güncelleştirmek ve kapatmak uygulamaya kalmıştır.

PackageStore eklenen paketler, XamlReader.Loadgibi bir XAML ayrıştırıcısıyla birlikte kullanıldığında çok iş parçacıklı ortamlarda erişilebilir. Çok iş parçacıklı bir ortamda çalışırken, uygulamanın erişimden önce paketi kilitlemesi gerekir.

Yöntemler

AddPackage(Uri, Package)

Depoya bir Package ekler.

GetPackage(Uri)

Depodan belirtilen URI'ye sahip Package döndürür.

RemovePackage(Uri)

Belirtilen URI'ye sahip Package depodan kaldırır.

Şunlara uygulanır

Ayrıca bkz.