web-dev-qa-db-fra.com

Récupérer la version actuelle de l'application à partir du package

Bien que je puisse obtenir la version Assembly en utilisant le code suivant

        var Assembly = typeof(App).GetTypeInfo().Assembly;
        var assemblyVersion = Assembly.GetCustomAttribute<AssemblyFileVersionAttribute>().Version;

Je souhaite récupérer la version de Package.appxmanifest dans ce cas 1.0.0.4

<?xml version="1.0" encoding="utf-8"?>
<Package xmlns="http://schemas.Microsoft.com/appx/2010/manifest" xmlns:m2="http://schemas.Microsoft.com/appx/2013/manifest">
  <Identity Name="zzz" Publisher="CN=zzz" Version="1.0.0.4" />

Je m'attendais à avoir accès à Windows.ApplicationModel, mais ce n'est pas disponible pour moi

35
Chris Ballance

Voici ce que vous pouvez faire pour récupérer la version dans le code:

using Windows.ApplicationModel;

public static string GetAppVersion()
{
  Package package = Package.Current;
  PackageId packageId = package.Id;
  PackageVersion version = packageId.Version;

  return string.Format("{0}.{1}.{2}.{3}", version.Major, version.Minor, version.Build, version.Revision);
}

Référence: http://www.michielpost.nl/PostDetail_67.aspx

94
Kevin Avignon