Sdílet prostřednictvím


PackageStore Třída

Definice

Představuje kolekci Package instancí specifických pro aplikaci, které se používají v kombinaci s 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
Dědičnost
PackageStore
Atributy

Poznámky

PackageStore definuje referenční kolekce balíčku, které jsou v aplikaci otevřené a aktivní. Balíčky přidané do PackageStore jsou přístupné, jsou jejich hodnotou klíče URI. PackageStore podporuje tři běžná použití:

  1. Přístup k datům PackagePart prostřednictvím PackWebRequest.

  2. Aplikace získá instanci Package vzhledem k identifikátoru URI balíčku.

  3. Přístup k balíčkům vytvořeným a uloženým v MemoryStream.

Ke zlepšení výkonu a minimalizaci režie opakovaných operací otevření/zavření souborů se PackageStore používá ke správě instancí balíčků, ke které přistupuje PackWebRequest a přímo aplikace. Při přístupu k datům v balíčku se nejprve zkontroluje Package adresa požadovaného PackagePartUri, aby se zjistilo, jestli je balíček již definovaný a otevřený v PackageStore. Pokud je balíček definován jako otevřený v PackageStore, požadované části lze přistupovat přímo bez opakovaného otevření a zavření balíčku pro každou žádost.

Pokud aplikace otevře balíček s Package.Open, AddPackage lze volat pro přidání balíčku do PackageStore. RemovePackage by se měl později volat, aby se balíček odebral z PackageStore před voláním Package.Close.

Balíčky XPS otevřené pomocí konstruktoru XpsDocument se automaticky přidají a odeberou z PackageStore při vytvoření a odstranění dokumentu. (Není nutné volat AddPackage nebo RemovePackage samostatně pro balíčky XPS otevřené pomocí konstruktorů XpsDocument.)

Oprávnění vstupně-výstupních operací souboru balíčku, ke které se přistupuje prostřednictvím PackageStore zůstane stejná jako oprávnění vstupně-výstupních operací nastavených v balíčku při jeho otevření. PackageStore poskytuje pouze odkazy na balíčky, které byly přidány do úložiště. Je na aplikaci, aby správně otevřela, aktualizovala a zavřela jednotlivé balíčky.

Balíčky přidané do PackageStore lze získat přístup v prostředích s více vlákny, pokud jsou použity v kombinaci s analyzátorem XAML, jako je XamlReader.Load. Při provozu ve vícevláknovém prostředí musí aplikace před přístupem uzamknout balíček.

Metody

Name Description
AddPackage(Uri, Package)

Přidá do úložiště Package.

GetPackage(Uri)

Vrátí Package se zadaným identifikátorem URI z úložiště.

RemovePackage(Uri)

Odebere Package se zadaným identifikátorem URI z úložiště.

Platí pro

Viz také