如何让Visual Studio自动递增生成版本号?修改AssemblyInfo.cs后无效
问题描述
我修改了AssemblyInfo.cs文件,在文件末尾添加了如下代码:
[assembly: AssemblyVersion("0.6.*")] //[assembly: AssemblyVersion("1.0.0.0")] //[assembly: AssemblyFileVersion("1.0.0.0")]
原本以为编译应用时程序集版本会自动变更,但版本一直停留在0.6.8717不再递增,请问我哪里操作错误?
排查与解决方法
- 检查重复的版本定义:确认AssemblyInfo.cs文件中是否在你新增代码之前就存在
[assembly: AssemblyVersion]条目。编译器会优先使用文件中靠前的版本定义,后续的会被忽略,必须保证整个文件只有一个带通配符的AssemblyVersion("0.6.*")定义。 - 清理后重新编译:如果开启了增量编译,编译器只会重新编译改动过的文件,不会重新生成版本号。执行
Build -> Clean Solution清理项目,再重新全量编译,强制触发版本号生成逻辑。 - 检查AssemblyFileVersion配置:即使你注释掉了代码里的
AssemblyFileVersion,项目属性里的设置可能会覆盖这个配置。右键项目→属性→应用程序→程序集信息,确认“文件版本”是否被设为固定值,或者是否开启了自动生成相关选项。显式设置的AssemblyFileVersion会干扰程序集版本的自动递增。 - 确认构建工具版本:旧版MSBuild或Visual Studio对通配符版本的支持可能存在问题,建议使用Visual Studio 2019及以上版本(对应MSBuild 16.x及以上),确保版本生成逻辑正常工作。
内容的提问来源于stack exchange,提问作者K14M
相关产品推荐
相关产品推荐

