VS 2017构建错误 - AssemblyInfo.cs中的重复属性

时间:2017-07-27 11:50:13

标签: visual-studio-2017 build-error

我正在开发一个通过运行dotnet new angularClear blog explanation of usage)来开始生活的Web应用程序。

为了扩展默认代码的功能,我开始开发Web API。我添加了3个名为SharedSchedulingScheduling_Tests的.Net核心库项目。

Scheduling中定义了一些域模型类,在Shared中定义了一些基类,最后在ShedulingTests中定义了一些NUnit测试。

构建解决方案时,我的Web应用程序项目中会出现2个新文件夹:SharedScheduling。我也遇到如下构建错误:

Error   CS0579  Duplicate 'System.Reflection.AssemblyCompanyAttribute'

我不知道该去哪里,任何建议都会非常受欢迎。

2 个答案:

答案 0 :(得分:5)

发生这种情况是因为新的.NET工具会自动创建属性并将其添加到程序集中,因此它们现在在构建中出现两次。

有两种解决方法:

  1. 删除AssemblyInfo.cs

  2. 保留AssemblyInfo.cs,但是将标签添加到CSProj文件中以隐藏AssemblyInfo中的属性。

例如:

<PropertyGroup>
  <TargetFramework>netstandard2.0</TargetFramework>
  <GenerateAssemblyCompanyAttribute>false</GenerateAssemblyCompanyAttribute>
  <GenerateAssemblyFileVersionAttribute>false</GenerateAssemblyFileVersionAttribute>
  <GenerateAssemblyVersionAttribute>false</GenerateAssemblyVersionAttribute>  
  <GenerateAssemblyConfigurationAttribute>false</GenerateAssemblyConfigurationAttribute>
  <GenerateAssemblyDescriptionAttribute>false</GenerateAssemblyDescriptionAttribute>
  <GenerateAssemblyProductAttribute>false</GenerateAssemblyProductAttribute>
  <GenerateAssemblyTitleAttribute>false</GenerateAssemblyTitleAttribute>    
</PropertyGroup>

(感谢https://johnkoerner.com/csharp/dealing-with-duplicate-attribute-errors-in-net-core/

答案 1 :(得分:1)

您是否检查过项目中是否有 AssembleyInfo.cs 文件?如果是,则尝试删除它并重建项目。