最近、[プロパティ]-> [アプリケーション]-> [アセンブリ情報]ボタンを使用して、一連のC#プロジェクト(dll)に著作権情報を追加しました。私は単一のソリューションでそのようなプロジェクトをいくつか持っています。コンパイルすると、次のタイプのエラーメッセージが表示されます。
エラーCS0579:重複する「XXX」属性
ここで、「XXX」は指定した属性の1つの名前です(例: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")]
修飾子をアタッチできる手動で派生した属性クラスはありません。
この重複する問題を解決するにはどうすればよいですか?
アセンブリ情報プロジェクトのウィンドウプロパティでこれらの属性をすでに指定していると思います。これを行った場合は、それらの属性をアセンブリ情報から削除してください。
私はデバッグ構成を行っていましたが、すべてのエラーはbin\Releaseの内部にありました。
そこで、bin\Releaseを読み取り専用に設定して「修正」しました。