2015-02-20 10 views
22

В то время как я могу получить версию сборки, используя следующий кодПолучить текущую версию приложения из пакета

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

Я хотел бы, чтобы получить версию от Package.appxmanifest в этом случае 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" /> 

Я ожидал получить доступ к Windows.ApplicationModel, но это не доступно для меня

+0

возможно дубликат [Как я могу получить мой Windows Store приложения заголовок и информацию о версии] (http://stackoverflow.com/questions/14371275/how-can-i-get-my-windows-store-apps-title-and-version-info) –

ответ

66

Вот что вы можете сделать для получить версию в коде:

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

} 

Я использовал эту ссылку: http://www.michielpost.nl/PostDetail_67.aspx

+1

Отлично! Привет, Кевин! –

+2

@ChrisBallance добро пожаловать! Всегда приятно помогать вам! –

+0

Вы также знаете, как получить описание пакета? Package.Current.Description пуст во время выполнения ... –