Package.FindRelatedPackages(FindRelatedPackagesOptions) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
FindRelatedPackages方法會提供相依性,然後提供指定套件的相依性做為套件清單。 您可以使用 options 參數,依相依性類型篩選清單。
public:
virtual IVector<Package ^> ^ FindRelatedPackages(FindRelatedPackagesOptions ^ options) = FindRelatedPackages;
IVector<Package> FindRelatedPackages(FindRelatedPackagesOptions const& options);
public IList<Package> FindRelatedPackages(FindRelatedPackagesOptions options);
function findRelatedPackages(options)
Public Function FindRelatedPackages (options As FindRelatedPackagesOptions) As IList(Of Package)
參數
- options
- FindRelatedPackagesOptions
定義搜尋選項的 FindRelatedPackageOptions 。
傳回
會傳回包含搜尋結果的IList < 套件 >。
Windows 需求
裝置系列 |
Windows 11 Insider Preview (已於 10.0.23504.0 引進)
|
API contract |
Windows.Foundation.UniversalApiContract (已於 v15.0 引進)
|
範例
取得相依套件的顯示名稱範例
對於主機執行時間提供者套件,相依套件清單對於向使用者顯示很有用。 在下列範例中,目前的套件會取得相依之所有主機執行時間取用者的顯示名稱清單。
static List<string> GetDisplayNamesOfHostedAppsForCurrentPackage()
{
List<string> displayNames = new();
// Configure package options to get packages dependent on the app package
var pkgdependents = PackageRelationship.Dependents;
FindRelatedPackagesOptions hostRuntimeDependents = new(pkgdependents)
{
IncludeFrameworks = false,
IncludeHostRuntimes = true,
IncludeOptionals = false,
IncludeResources = false
};
// Get a list of packages which are dependent on the app package.
IList<Package> hostedPackages = Package.Current.FindRelatedPackages(hostRuntimeDependents);
// Iterate over the dependent packages and get their display names.
foreach (Package package in hostedPackages)
{
displayNames.Add(package.DisplayName);
}
return displayNames;
}
取得套件相依性範例
相依套件也可以收集其相依性的詳細資訊,並適當地處理不同的案例。 在下列範例中,目前的套件會取得其具有非選擇性相依性之套件的清單。
static IList<Package> GetNonOptionalDependenciesForCurrentPackage()
{
// Configure package options to get non-optional dependencies
var pkgdependents = PackageRelationship.Dependencies;
FindRelatedPackagesOptions nonOptionalDependency = new(pkgdependents)
{
IncludeFrameworks = true,
IncludeHostRuntimes = true,
IncludeOptionals = false,
IncludeResources = true
};
// Find and return the packages which are non-optional dependencies
return Package.Current.FindRelatedPackages(nonOptionalDependency);
}
備註
任何具有 packageQuery 功能或中 IL 的呼叫者 (,如果呼叫適用于目前套件,) 可以使用此 API 取得相依專案清單, (任何定義指定套件資訊清單) 相依性之套件的相 依性 。 套件可以使用此資料向使用者顯示其取用者,或根據該資料做出維護決策。 例如,Edge 可以顯示安裝在裝置上的所有 PWA。 此 API 知道所有已註冊的套件。