Package.FindRelatedPackages(FindRelatedPackagesOptions) Metode

Definisi

Metode FindRelatedPackages menyediakan dependensi lalu dependen untuk paket tertentu sebagai daftar Paket. Daftar dapat difilter berdasarkan jenis dependensi menggunakan parameter opsi .

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)

Parameter

options
FindRelatedPackagesOptions

FindRelatedPackageOptions yang menentukan opsi pencarian.

Mengembalikan

Mengembalikan Paket> IList< yang berisi hasil pencarian.

Persyaratan Windows

Rangkaian perangkat
Windows 11 Insider Preview (diperkenalkan dalam 10.0.23504.0)
API contract
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v15.0)

Contoh

Mendapatkan nama tampilan contoh paket dependen

Untuk paket Penyedia Runtime Host, daftar paket dependen berguna untuk ditampilkan kepada pengguna. Dalam sampel di bawah ini, paket saat ini mendapatkan daftar Nama Tampilan dari semua Konsumen Runtime Host tergantung padanya.

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;
}

Mendapatkan contoh dependensi paket

Paket dependen juga dapat mengumpulkan informasi lebih lanjut tentang dependensinya dan menangani kasus yang berbeda dengan tepat. Dalam sampel di bawah ini, paket saat ini mendapatkan daftar paket tempat paket memiliki dependensi non-opsional.

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);
}

Keterangan

Penelepon apa pun (dengan kemampuan packageQuery atau MEDIUM IL, atau tanpa jika panggilan adalah untuk paket saat ini) dapat menggunakan API ini untuk mendapatkan daftar dependen (paket apa pun yang menentukan Dependensi dalam manifesnya) dari Paket tertentu. Paket dapat menggunakan data ini untuk menampilkan konsumennya kepada pengguna atau membuat keputusan layanan berdasarkan data tersebut. Misalnya, Edge dapat menampilkan semua PWAs yang diinstal pada perangkat. API ini mengetahui semua paket terdaftar.

Berlaku untuk

Lihat juga