.NET 4.x升级至.NET Core后出现CS0579重复特性错误
.NET 4.x升级到.NET Core后CS0579重复特性错误的解决方案
升级后触发CS0579错误,核心原因是.NET Core/.NET 5+默认会通过项目文件自动生成AssemblyVersion、AssemblyTitle等程序集特性,而原.NET 4.x项目的AssemblyInfo.cs中仍保留了这些特性的手动定义,两者冲突导致重复。以下是两种可行的解决方法:
解决方案一:移除AssemblyInfo.cs中的重复特性
- 找到项目目录下的
Properties/AssemblyInfo.cs文件 - 删除文件内所有与错误提示匹配的特性代码,包括:
[assembly: AssemblyVersion("x.x.x.x")][assembly: AssemblyTitle("xxx")][assembly: AssemblyProduct("xxx")][assembly: AssemblyFileVersion("x.x.x.x")][assembly: AssemblyConfiguration("xxx")][assembly: AssemblyCompany("xxx")]
- 保存文件后重新编译项目,错误即可消除
解决方案二:禁用自动生成程序集特性
如果需要保留AssemblyInfo.cs中的特性定义,可通过项目配置关闭自动生成逻辑:
- 打开项目的
.csproj文件 - 在
<PropertyGroup>节点内添加以下配置代码:<GenerateAssemblyInfo>false</GenerateAssemblyInfo> - 保存项目文件后重新编译,重复特性的错误会被解决
内容的提问来源于stack exchange,提问作者OzBob
相关产品推荐
相关产品推荐

