获取应用版本信息时出现奇怪的信息

问题描述 投票:0回答:1

我有一个 winui 3 应用程序,我正在使用此代码来获取应用程序版本信息:

assembly = Assembly.GetEntryAssembly();
assembly.GetCustomAttribute<AssemblyInformationalVersionAttribute>()?.InformationalVersion

之前,我有 Windows 11 - 22H2 和 Visual Studio 2022 v17.7 + net7.0 上面代码的输出如下:

4.0.0

今天我将 Windows(全新安装)更改为 23H2 和 Visual Studio 2022 v17.8 /Visual Studio 2022 v18.0-Preview1 + net8.0 但是当我运行我的应用程序(来自 Visual Studio)时,上面代码的输出几乎如下所示:

4.0.0 + ea32asd354ad5a4d5a4sda5a54da54da4das54da4d

我将.net版本更改为net7.0,或者我移动到以前的版本(从git)并且输出很奇怪。 但是当我从 MS 商店运行我的应用程序时,输出是正确的,或者当我创建新项目时,输出是正确的,但我不知道为什么我的项目被阻止

c# .net .net-assembly winui-3
1个回答
0
投票

这不是一个错误,而是一个重大变化。 正如开发人员社区中所讨论的,.NET SDK 中已包含新行为:.NET SDK 中包含源链接

要获得以前的行为并避免在 AssemblyInformationalVersion 中显示提交 ID,请在 .csproj 文件中包含以下设置:

<IncludeSourceRevisionInInformationalVersion>false</IncludeSourceRevisionInInformationalVersion>
© www.soinside.com 2019 - 2024. All rights reserved.