获取编译时错误 CS0579:重复的“组装文件版本属性”属性

本文关键字:属性 文件 版本 CS0579 编译时错误 获取 | 更新日期: 2023-09-27 18:34:19

我最近通过"属性->应用程序->程序集信息"按钮向一组 C# 项目 (dll) 添加了一些版权信息。我在单个解决方案中有几个这样的项目。编译后,我收到以下类型的错误消息:

错误 CS0579:重复的"XXX"属性

其中"XXX"是我指定的属性之一的名称(例如 AssemblyFileVersionAttribute)

谷歌搜索我发现,对于从属性类派生的类,可以使用以下内容允许重复:

[System.AttributeUsage(System.AttributeTargets.All, AllowMultiple=true)]
class NewAttribute : System.Attribute { }

但就我而言,我已经通过属性对话框添加了这些属性,并为每个项目提供了语句(在AssemblyInfo.cs中),例如:

[assembly: AssemblyCompanyAttribute("My Company")]
[assembly: AssemblyProductAttribute("My Product")]
[assembly: AssemblyCopyrightAttribute("© 2012 My Company, All Rights Reserved.")]
[assembly: AssemblyVersionAttribute("13.0.0.0")]
[assembly: AssemblyFileVersionAttribute("1.0.0.0")]

并且没有任何手动派生的属性类,我可以附加任何限定符。

如何解决此重复问题?

获取编译时错误 CS0579:重复的“组装文件版本属性”属性

通过在.csproj文件中添加它解决了这个问题

 <PropertyGroup>
    <TargetFramework>netcoreapp2.1</TargetFramework>
    <GenerateAssemblyConfigurationAttribute>false</GenerateAssemblyConfigurationAttribute>
        <GenerateAssemblyDescriptionAttribute>false</GenerateAssemblyDescriptionAttribute>
        <GenerateAssemblyProductAttribute>false</GenerateAssemblyProductAttribute>
        <GenerateAssemblyTitleAttribute>false</GenerateAssemblyTitleAttribute>
  </PropertyGroup>

正如 Bob 建议的那样,如果您不想单独添加它们,您可以添加

<GenerateAssemblyInfo>false</GenerateAssemblyInfo>   

<PropertyGroup>.

我想您已经在项目属性"程序集信息"窗口中指定了这些属性。 如果执行此操作,请从程序集信息中删除这些属性。

<GenerateAssemblyInfo>false</GenerateAssemblyInfo>添加到<PropertyGroup>.<</p>

div class="answers">

遇到类似的重复属性问题 CS0579

通过从项目中删除目录为我解决了这个问题。

我们在使用 Visual Studio 2022 (17.3.2) 时遇到了问题,更新 Visual Studio 解决了错误。