このトピック/回答を次のように拡張したいと思います。誰かが述べたように、この自動生成されたAssemblyInfoは外部ツールの障害になる可能性があります。私の場合、FinalBuilderを使用して、AssemblyInfoがビルドアクションによって更新されないという問題がありました。どうやら、FinalBuilderはAssemblyInfoの~proj
場所を見つけるためにファイルに依存しています。プロジェクトフォルダーの下のどこかを見ていると思いました。いいえ、これを変更します
<PropertyGroup>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
</PropertyGroup>
仕事の半分しかしませんでした。VSIDE / MSビルドでビルドした場合、カスタムアセンブリ情報が許可されました。しかし、アセンブリ情報ファイルを手動で操作せずに、FinalBuilderでもそれを実行する必要がありました。MSBuild / VSとFinalBuilderのすべてのプログラムを満足させる必要がありました。
既存のものにエントリを追加することでこれを解決しました ItemGroup
<ItemGroup>
<Compile Remove="Common\**" />
<Content Remove="Common\**" />
<EmbeddedResource Remove="Common\**" />
<None Remove="Common\**" />
<!-- new added item -->
<None Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
これで、このアイテムを持つFinalBuilderは、AssemblyInfoの場所を見つけてファイルを変更します。アクションでNone
はMSBuild / DevEnvが許可されますが、このエントリは無視さCompile
れ、proj
ファイル内のアセンブリ情報エントリに通常付属するアクションに基づくエラーは報告されなくなります。
C:\ Program Files \ dotnet \ sdk \ 2.0.2 \ Sdks \ Microsoft.NET.Sdk \ build \ Microsoft.NET.Sdk.DefaultItems.targets(263,5):error:Duplicate 'Compile' items was included。.NET SDKには、デフォルトでプロジェクトディレクトリの「コンパイル」アイテムが含まれています。これらのアイテムをプロジェクトファイルから削除するか、プロジェクトファイルに明示的に含める場合は、 'EnableDefaultCompileItems'プロパティを 'false'に設定します。詳細については、https://aka.ms/sdkimplicititemsを参照してください。重複したアイテムは次のとおりです: 'AssemblyInfo.cs'