Duplicate 'AssemblyVersion' attribute in C#
By FoxLearn 3/20/2025 1:35:43 AM 43
When you try to add the AssemblyVersion attribute to your project, for example, to auto-increment the version:
using System.Reflection; [assembly: AssemblyVersion("1.0.0.0")] [assembly: AssemblyFileVersion("1.0.0.0")]
You may encounter the following compiler errors:
Error CS0579: Duplicate ‘AssemblyVersion’ attribute Error CS0579: Duplicate ‘AssemblyFileVersion’ attribute
But you don't see these attributes anywhere else in your project.
Solution
The issue arises because Visual Studio automatically generates the assembly information by default.
To disable this auto-generation, add the following to your .csproj
file:
<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <TargetFramework>netcoreapp3.1</TargetFramework> </PropertyGroup> <PropertyGroup> <GenerateAssemblyInfo>false</GenerateAssemblyInfo> </PropertyGroup> </Project>
Where is the auto-generated assembly info located?
If your assembly is called DupeAssemblyVersion
and you're targeting .NET Core 3.1, the auto-generated assembly info will be found at:
\obj\Debug\netcoreapp3.1\DupeAssemblyVersion.AssemblyInfo.cs
Here’s an example of what this file looks like:
//------------------------------------------------------------------------------ // <auto-generated> // This code was generated by a tool. // Runtime Version:4.0.30319.42000 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. // </auto-generated> //------------------------------------------------------------------------------ using System; using System.Reflection; [assembly: System.Reflection.AssemblyCompanyAttribute("DupeAssemblyVersion")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] [assembly: System.Reflection.AssemblyProductAttribute("DupeAssemblyVersion")] [assembly: System.Reflection.AssemblyTitleAttribute("DupeAssemblyVersion")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] // Generated by the MSBuild WriteCodeFragment class.
By turning off the auto-generation of assembly info, you can prevent the Duplicate ‘AssemblyVersion’ attribute
error from occurring.
- Primitive types in C#
- How to set permissions for a directory in C#
- How to Convert Int to Byte Array in C#
- How to Convert string list to int list in C#
- How to convert timestamp to date in C#
- How to Get all files in a folder in C#
- How to use Channel as an async queue in C#
- Case sensitivity in JSON deserialization
Categories
Popular Posts
11 Things You Didn't Know About Cloudflare
12/19/2024
Freedash bootstrap lite
11/13/2024
RuangAdmin Template
11/17/2024