【问题标题】:Set Product Version and File Version to different numbers in C#在 C# 中将产品版本和文件版本设置为不同的数字
【发布时间】:2020-02-07 12:26:55
【问题描述】:

在 C++ 项目中,我可以在版本资源文件中使用 VERSIONINFO 向我的程序集添加不同的产品版本和文件版本值:

#define VER_PRODUCTVERSION          1,0,0,0
#define VER_PRODUCTVERSION_STR      "1.0\0"

#define VER_FILEVERSION             1,0,0,1
#define VER_FILEVERSION_STR         "1.0.0.1\0"

这在 DLL 属性中显示为:

我无法在 C# 项目中实现相同的目标。我在 AssemblyInfo.cs 文件中设置了以下内容:

[assembly: AssemblyVersion("1.0")]
[assembly: AssemblyFileVersion("1.0.0.1")]

但是,在 DLL 属性中,两者都设置为 File Version 的值:

如何在 C# DLL 中将 Product Version 和 File Version 设置为不同的值?我正在使用 Visual Studio 2019。

【问题讨论】:

    标签: c# visual-studio visual-studio-2019 .net-assembly


    【解决方案1】:

    您可以使用AssemblyInformationalVersion 属性设置“产品版本”信息中显示的值。在您的Assembly.cs 文件中设置如下:

    [assembly: AssemblyInformationalVersion("1.2.3.4")]
    

    来自Microsoft documentation

    注意:如果 AssemblyInformationalVersionAttribute 属性不是 应用于程序集,版本号由 AssemblyVersionAttribute 属性由 Application.ProductVersion、Application.UserAppDataPath 和 Application.UserAppDataRegistry 属性。

    【讨论】:

      【解决方案2】:

      当我编辑我的 AssemblyInfo.cs 文件并重新构建时,发现我刚刚更改的某些值会被重置。

      解决办法是编辑 csproj 文件,然后就解决了!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-04-16
        • 2016-10-17
        • 1970-01-01
        • 2021-02-18
        相关资源
        最近更新 更多