C# 在VisualStudio2008项目中存储版本号的最佳方法是什么?

C# 在VisualStudio2008项目中存储版本号的最佳方法是什么?,c#,visual-studio-2008,build-process,C#,Visual Studio 2008,Build Process,我想在调试版本和发布版本中通过编程获得一个C#项目存储的主要版本号 在哪里可以存储此版本号以及如何访问它?转到项目属性|应用程序|程序集信息 您可以通过Assembly.getExecutionGassembly().GetName()访问该版本。版本号通常在AssemblyInfo.cs文件(位于属性文件夹中)中定义。您可以通过以下方式以编程方式获取版本号: Console.WriteLine(Assembly.GetExecutingAssembly().GetName().Version.

我想在调试版本和发布版本中通过编程获得一个C#项目存储的主要版本号


在哪里可以存储此版本号以及如何访问它?

转到项目属性|应用程序|程序集信息


您可以通过
Assembly.getExecutionGassembly().GetName()访问该版本。版本号通常在AssemblyInfo.cs文件(位于属性文件夹中)中定义。您可以通过以下方式以编程方式获取版本号:

Console.WriteLine(Assembly.GetExecutingAssembly().GetName().Version.ToString());
或者,如果要访问不同的部分:

Version version = Assembly.GetExecutingAssembly().GetName().Version;
Console.WriteLine("Major={0}, Minor={1}", version.Major, version.Minor);

有关更多详细信息,请参阅。

我想这取决于您所说的存储,但您应该看看:


编辑:实际上这是为了获取部署的版本。它可能不是您所需要的。

以编程方式获取程序集版本

Assembly.GetExecutingAssembly().GetName().Version
下面是如何获取文件版本

System.Diagnostics.FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location)

…Version.ToString(x),其中x是版本信息的部分数量,通常比引用单个属性效果更好@托德博士:这是一个很好的观点。在我的回答中,这个示例背后的想法更多地表明,如果您想对这些元素进行处理,Version对象将这些元素作为属性。例如,您可能希望构造一个类似“Version 1.3,build 3252”的字符串,其中第一部分可以使用.ToString(2),但需要单独访问build属性以获取内部版本号。@Fredrik Mörk:绝对可以。我不是想说你做的是坏事。我只是添加了一些信息,因为我知道很多人忽略了重载的ToString()。