如何将Manifest版本与程序集版本同步

时间:2013-06-26 16:04:10

标签: .net wpf silverlight windows-phone-8

我读过“Microsoft likes making people enter duplicate information”,但我接受了这个问题。

app清单中有一个版本,assemblyinfo.cs中有一个版本。我在assemblyinfo文件中使用默认的构建和修订号,如下所示:

[assembly: AssemblyVersion("1.1.*")]
[assembly: AssemblyFileVersion("1.1.*")]

但我似乎仍然需要手动将构建版本复制到清单文件WMAppManifest.xml中。

 <App xmlns="" RuntimeType="Silverlight" Version="1.1.0.6" ...>

除了设置tt模板和构建动作以在构建后重新生成清单之外,是不是没有简单的方法来同步这些版本号?

1 个答案:

答案 0 :(得分:2)

没有内置的自动更新方法,但Store中也没有使用它们。提交不再读取WMAppManifest.xml中的值,所以真正的想法是选择要在内部代码中使用的那个(例如,在“关于”页面中),然后您只需要记住更新之一。

就普通做法而言,我只能说出我所看到的内容,而且本身只分为两部分。具有相对简单的应用程序/游戏的人在其应用程序的某处使用带有版本字符串的硬编码const string属性,并且不会触及任何其他文件。

其他人使用Visual Studio增加assemblyinfo.cs中的版本(使用*),然后直接读取它们。我没有看到任何人虔诚地维护和更新他们的WMAppManifest.xml版本信息。

顺便说一句,WMAppManifest.xml根本就有一个版本字符串的原因就是电话在安装时使用的那个,但是当您提交应用程序时,商店会覆盖该值本身,无论你自己放在那里有什么价值。