我有一个项目,在编译时产生以下错误:

重复'AssemblyVersion'属性

我检查了文件AssemblyInfo.cs,看起来没有重复。

我在MSDN上找到了这篇文章,它解决了一个类似的问题,并按照这篇文章中的建议解决了这个问题。

有人能告诉我这是怎么回事吗?这种情况是否只发生在有两个或多个类名称相似的项目的情况下?还是其他原因?


当前回答

我也一直在和这个问题作斗争。 在我的例子中,我把解决方案和项目放在了同一个地方,所以我遇到了问题。当我为解决方案选择了一个文件夹并将项目放在这个解决方案中后,它正常工作。

其他回答

从Visual Studio 2017开始,另一个继续使用AssemblyInfo.cs文件的解决方案是关闭自动生成组装信息,如下所示:

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <GenerateAssemblyInfo>false</GenerateAssemblyInfo>
  </PropertyGroup>
</Project>

我个人认为它对于需要同时支持。net框架和。net标准的项目非常有用。

当我把两个项目放在同一个目录中时,我得到了这个错误。如果我有一个解决方案的目录,我把一个单独的Web和数据目录放在它编译正确。

对我来说,AssembyInfo.cs和SolutionInfo.cs有不同的值。所以也检查一下这些文件。我只是把其中一个版本删除了。

在我的例子中,在编译期间生成的一些临时*.cs文件被意外添加到项目中。

这些文件来自obj\Debug目录,所以它们肯定不应该被添加到解决方案中。A *.cs通配符有点疯狂,错误地添加了它们。

删除这些文件解决了这个问题。

我最近遇到了这种情况,没有对源代码进行任何更改,但在尝试了一些新的项目参考之后。我进入了这样一种状态,即使在恢复了分支中的所有更改之后,这个错误仍然出现。

清理树枝解决了我的问题:

Git clean -xfd