PackageStore Klasa

Definicja

Reprezentuje kolekcję wystąpień Package specyficznych dla aplikacji używanych w połączeniu z PackWebRequest.

[System.Security.SecurityCritical(System.Security.SecurityCriticalScope.Everything)]
public static class PackageStore
public static 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:

  1. Uzyskiwanie dostępu do danych PackagePart za pośrednictwem PackWebRequest.

  2. Aplikacja uzyskująca wystąpienie Package przy użyciu identyfikatora URI pakietu.

  3. 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.

Dotyczy

Produkt Wersje
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

Zobacz też