C# 关闭警告CS1607

C# 关闭警告CS1607,c#,.net-assembly,C#,.net Assembly,我有一个公用程序集文件,在其中我尝试关闭警告: 警告CS1607:程序集生成--为“文件版本”指定的版本“2.0.4.121106”不是正常的“major.minor.build.revision”格式 我已经这样做了,但不起作用: #pragma warning disable 1607 [assembly: AssemblyVersion("2.0.*")] [assembly: AssemblyFileVersion("2.0.4.121106")] [assembly: Asse

我有一个公用程序集文件,在其中我尝试关闭警告:

警告CS1607:程序集生成--为“文件版本”指定的版本“2.0.4.121106”不是正常的“major.minor.build.revision”格式

我已经这样做了,但不起作用:

#pragma warning disable 1607    
[assembly: AssemblyVersion("2.0.*")]
[assembly: AssemblyFileVersion("2.0.4.121106")]
[assembly: AssemblyInformationalVersion("2.0.0.0")]
#pragma warning restore 1607

那么,在代码中有什么方法可以做到这一点吗?

您可以在“构建”选项卡上的项目属性中做到这一点。有一个名为“抑制警告”的字段,您应该在其中放置“1607”。

出现错误的原因是修订号大于65534。我发现在研究我的解决方案时,同样的问题是,没有办法(或容易/正确)抑制这个警告。但为了避免这种情况,我们发现可以以您的版本为例,在out AssemblyVersion.cs中设置以下代码:

[assembly: AssemblyFileVersion("2.0.0.0")]
[assembly: AssemblyInformationalVersion("2.0.4.121106")]

这将使其成为我们的DLL“2.0.4.121106”的产品版本,在查看我们的DLL的属性>详细信息时。

此外,请注意,这也将禁用所有其他(可能有价值)CS1607警告,而不仅仅是带有版本号的警告。出现此警告是有原因的。因为在操作系统级别,版本号的每个部分只能是16位,如果忽略此错误,操作系统将显示一个已损坏的版本号。在您的情况下,操作系统版本号将显示为2.0.4.55570。