我正在尝试确定Silverlight应用程序的版本号.目前我正在使用:
string name = Assembly.GetExecutingAssembly().FullName;
AssemblyName asmName = new AssemblyName(name);
// http://www.dotnet247.com/247reference/msgs/45/225355.aspx
string versionNo = "Version: " + asmName.Version.Major + "." + asmName.Version.Minor + "." + asmName.Version.Build + "." + asmName.Version.Revision;
Run Code Online (Sandbox Code Playgroud)
但是,我的应用程序的四个连续版本给了我:
1.0.0.14310
1.0.0.14343
1.0.0.14382
1.0.0.14425
这不是世界末日,因为它们是连续的,但我想知道这是如何得出的."当前"修订号是存储在项目中的任何位置还是将构建在另一台机器上?如果有人能指出我的背景阅读(这不是MSDN!)会很棒.
查看Assembly.cs文件(可在应用程序的properties文件夹中找到).
注意:-
[assembly: AssemblyVersion("1.0.0.*")]
Run Code Online (Sandbox Code Playgroud)
在文件的底部.这指定了固定的主要,次要和内部版本号.修订号将是午夜以来的秒数.
如果你有这个: -
[assembly: AssemblyVersion("1.0.*")]
Run Code Online (Sandbox Code Playgroud)
您将获得一个内部版本号作为自2000年1月1日以来的天数和修订号作为自午夜以来的秒数除以2.
VS2010中存在潜在的错误,会影响这一点.有关详细信息,请参阅connect.microsoft.com. - BillVo