Package.FindRelatedPackages(FindRelatedPackagesOptions) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
FindRelatedPackages メソッドは、依存関係を提供し、特定のパッケージの依存関係を Package リストとして提供します。 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 機能または Medium IL を使用する場合、または現在のパッケージの呼び出しがない場合) は、この API を使用して、特定のパッケージの依存 (マニフェストで 依存関係 を定義するすべてのパッケージ) の一覧を取得できます。 パッケージは、このデータを使用して、コンシューマーをユーザーに表示したり、それに基づいてサービスの決定を行ったりすることができます。 たとえば、Edge では、デバイスにインストールされているすべての PWA を表示できます。 この API は、登録されているすべてのパッケージを認識します。