获取WinUI3应用版本信息时出现异常内容的问题
WinUI 3 应用版本信息带Git哈希后缀问题解决办法
问题原因
VS 2022 v17.8及后续版本搭配.NET 8 SDK(或更新的.NET 7 SDK)时,默认启用了自动在InformationalVersion中追加Git源代码修订哈希的功能,Debug模式下运行时会生成类似4.0.0 + ea32asd354ad5a4d5a4sda5a54da54da4das54da4d的版本字符串。而商店发布用的Release配置默认不会启用该功能,新项目因未关联Git或默认配置不同,所以输出正常。
解决步骤
1. 显式固定InformationalVersion值
打开项目的.csproj文件,添加或修改<InformationalVersion>属性为固定版本号:
<PropertyGroup> <!-- 固定版本号,不再追加哈希 --> <InformationalVersion>4.0.0</InformationalVersion> </PropertyGroup>
2. 禁用自动追加源代码修订哈希
如果需要保留版本号的灵活性但不想加哈希,可以在.csproj中添加禁用配置:
<PropertyGroup> <IncludeSourceRevisionInInformationalVersion>false</IncludeSourceRevisionInInformationalVersion> </PropertyGroup>
3. 分配置控制哈希追加(可选)
如果希望Debug模式保留哈希方便调试,Release模式用干净版本号,可以用条件编译配置:
<PropertyGroup> <InformationalVersion Condition="'$(Configuration)' == 'Release'">4.0.0</InformationalVersion> <InformationalVersion Condition="'$(Configuration)' == 'Debug'">4.0.0+$(SourceRevisionId)</InformationalVersion> </PropertyGroup>
验证操作
修改配置后,执行以下步骤确保生效:
- 清理项目:在VS中右键项目 → 清理,或运行命令
dotnet clean - 重新生成项目:右键项目 → 生成
- 运行应用,检查版本输出是否恢复为
4.0.0
内容的提问来源于stack exchange,提问作者user13024846
相关产品推荐
相关产品推荐

