C#获取程序集自动增加的版本号和编译时间

1. 首先找到文件AssemblyInfo.cs, 路径如下:

2. 修改版本的格式,修改后,程序每次编译,程序集的版本号都会自增。

修改前:

[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

修改后:

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

3. 获取版本号和编译时间

var version = Assembly.GetExecutingAssembly().GetName().Version;
GlobalConfig.Version = version.ToString();
GlobalConfig.DateTime = System.IO.File.GetLastWriteTime(this.GetType().Assembly.Location).ToString();

Note: C#下默认是每发布一次才增加,而生成时不会;修改版本的格式,修改后,程序每次编译,程序集的版本号都会自动增加。

 

CS8357    指定的版本字符串包含通配符,这与确定性不兼容。请删除版本字符串中的通配符,或禁用此编译的确定性

直接编辑项目文件(csproj),修改:

<PropertyGroup>
  <Deterministic>False</Deterministic>
</PropertyGroup>

将 deterministic 改为 false 即可。

posted @ 2023-04-21 22:22  simadi  阅读(574)  评论(0编辑  收藏  举报