PackageStore 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
表示與 PackWebRequest搭配使用之應用程式特定 Package 實例的集合。
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
- 繼承
-
PackageStore
- 屬性
備註
PackageStore 會定義在應用程式中開啟且作用中的套件參考集合。 新增至 PackageStore 的套件是透過其密鑰 URI 值來存取。 PackageStore 支援三個常見用途:
透過 PackWebRequest存取 PackagePart 數據。
取得指定封裝 URI 之 Package 實例的應用程式。
存取建立並儲存在 MemoryStream中的套件。
為了改善效能,並將重複檔案開啟/關閉作業的額外負荷降到最低,PackageStore 可用來管理應用程式 PackWebRequest 和直接存取的封裝實例。 存取封裝中的數據時,會先檢查所要求 PackagePartUri 的 Package 位址,以查看套件是否已定義並在 PackageStore中開啟。 如果封裝在 PackageStore中定義為開啟,則可以直接存取要求的元件,而不需要重複開啟和關閉每個要求的封裝。
如果應用程式開啟具有 Package.Open的套件,則可以呼叫 AddPackage 將封裝新增至 PackageStore。 稍後應該呼叫 RemovePackage,以在呼叫 Package.Close之前,先從 PackageStore 移除套件。
使用 XpsDocument 建構函式開啟的 XPS 套件,會在檔建立和處置時,自動從 PackageStore 新增和移除。 (您不需要針對以 XpsDocument 建構函式開啟的 XPS 套件個別呼叫 AddPackage 或 RemovePackage。
透過 PackageStore 存取之封裝的檔案 I/O 許可權,與開啟封裝時所設定的 I/O 許可權相同。 PackageStore 只提供已新增存放區之套件的參考。 應用程式必須正確開啟、更新和關閉每個套件。
當封裝與 XAML 剖析器搭配使用時,可以在多線程環境中存取新增至 PackageStore 的套件,例如 XamlReader.Load。 在多線程環境中作業時,應用程式必須在存取之前鎖定套件。
方法
AddPackage(Uri, Package) |
將 Package 新增至存放區。 |
GetPackage(Uri) |
從存放區傳回具有指定 URI 的 Package。 |
RemovePackage(Uri) |
從存放區中移除具有指定 URI 的 Package。 |