PackageStore 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
表示搭配 Package 一起使用之應用程式特有的 PackWebRequest 執行個體 (Instance) 集合。
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支援三個常見的用途:
PackagePart透過PackWebRequest存取數據。
取得指定封裝 URI 實例 Package 的應用程式。
存取建立並儲存在 中的 MemoryStream封裝。
為了改善效能,並將重複檔案開啟/關閉作業的額外負荷降到最低,會 PackageStore 用來管理應用程式存取 PackWebRequest 和直接存取的封裝實例。 存取封裝中的數據時, Package 會先檢查所要求的 PackagePartUri 位址,以查看套件是否已定義並在 中 PackageStore開啟。 如果封裝定義為在 中 PackageStore開啟,則可以直接存取要求的元件,而不需要針對每個要求重複開啟和關閉封裝。
如果應用程式使用 開啟封裝 Package.Open, AddPackage 可以呼叫 以將封裝新增至 PackageStore。 RemovePackage稍後應該呼叫 ,以在呼叫 Package.Close之前從 PackageStore 移除套件。
使用建構函式開啟的 XpsDocument XPS 套件會在建立和處置檔時自動新增和移除 PackageStore 。 (您不需要針對以建構函式開啟XpsDocument的 XPS 套件個別呼叫或RemovePackage個別呼叫 AddPackage 。)
透過 PackageStore 存取之套件的檔案 I/O 許可權,與開啟封裝時所設定的 I/O 許可權相同。 PackageStore只會提供已新增存放區之封裝的參考。 應用程式必須正確開啟、更新和關閉每個套件。
當新增至 的 PackageStore 套件與 XAML 剖析器搭配使用時,可以在多線程環境中存取這些套件,例如 XamlReader.Load。 在多線程環境中操作時,應用程式必須先鎖定套件,才能存取。
方法
AddPackage(Uri, Package) |
將 Package 加入至存放區。 |
GetPackage(Uri) |
從存放區傳回具有指定之 URI 的 Package。 |
RemovePackage(Uri) |
將具有指定之 URI 的 Package 從存放區中移除。 |
適用於
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應