PackageStore Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Reprezentuje kolekcję wystąpień Package specyficznych dla aplikacji używanych w połączeniu z 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
- Dziedziczenie
-
PackageStore
- Atrybuty
Uwagi
PackageStore definiuje kolekcje odwołań pakietu, które są otwarte i aktywne w aplikacji. Pakiety dodane do PackageStore są dostępne według ich wartości identyfikatora URI klucza. PackageStore obsługuje trzy typowe zastosowania:
Uzyskiwanie dostępu do danych PackagePart za pośrednictwem PackWebRequest.
Aplikacja uzyskująca wystąpienie Package przy użyciu identyfikatora URI pakietu.
Uzyskiwanie dostępu do pakietów utworzonych i przechowywanych w MemoryStream.
Aby zwiększyć wydajność i zminimalizować obciążenie powtarzających się operacji otwierania/zamykania pliku, PackageStore służy do zarządzania wystąpieniami pakietów, do których uzyskuje dostęp PackWebRequest i bezpośrednio przez aplikację. Podczas uzyskiwania dostępu do danych w pakiecie adres Package żądanego PackagePartUri jest najpierw sprawdzany, aby sprawdzić, czy pakiet jest już zdefiniowany i otwarty w PackageStore. Jeśli pakiet jest zdefiniowany jako otwarty w PackageStore, żądane części mogą być dostępne bezpośrednio bez wielokrotnego otwierania i zamykania pakietu dla każdego żądania.
Jeśli aplikacja otworzy pakiet z Package.Open, można wywołać AddPackage, aby dodać pakiet do PackageStore. RemovePackage później należy wywołać polecenie , aby usunąć pakiet z PackageStore przed wywołaniem Package.Close.
Pakiety XPS otwierane za pomocą konstruktora XpsDocument są automatycznie dodawane i usuwane z PackageStore podczas tworzenia i usuwania dokumentu. (Nie trzeba wywoływać AddPackage ani RemovePackage oddzielnie dla pakietów XPS otwartych za pomocą konstruktorów XpsDocument).
Uprawnienia we/wy pliku pakietu dostępne za pośrednictwem PackageStore pozostają takie same jak uprawnienia we/wy ustawione w pakiecie po jego otwarciu. PackageStore zawiera tylko odwołania do pakietów, które zostały dodane do magazynu. Aplikacja musi poprawnie otwierać, aktualizować i zamykać każdy pakiet.
Pakiety dodane do PackageStore mogą być dostępne w środowiskach wielowątków, gdy są używane w połączeniu z analizatorem XAML, takim jak XamlReader.Load. W przypadku działania w środowisku wielowątkowym aplikacja musi zablokować pakiet przed uzyskaniem dostępu.
Metody
AddPackage(Uri, Package) |
Dodaje Package do sklepu. |
GetPackage(Uri) |
Zwraca Package z określonym identyfikatorem URI ze sklepu. |
RemovePackage(Uri) |
Usuwa Package z określonym identyfikatorem URI ze sklepu. |