Quero estender este tópico / respostas com o seguinte. Como alguém mencionado, este AssemblyInfo gerado automaticamente pode ser um obstáculo para as ferramentas externas. No meu caso, usando o FinalBuilder , tive um problema que o AssemblyInfo não estava sendo atualizado pela ação de compilação. Aparentemente, o FinalBuilder depende do ~proj
arquivo para encontrar a localização do AssemblyInfo . Eu pensei, estava procurando em qualquer lugar na pasta do projeto. Não. Então, mudar isso
<PropertyGroup>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
</PropertyGroup>
fez apenas metade da tarefa, permitiu informações personalizadas de montagem, se construídas pelo VS IDE / MS Build. Mas eu precisava do FinalBuilder também sem manipulações manuais para o arquivo de informações de montagem. Eu precisava satisfazer todos os programas, MSBuild / VS e FinalBuilder.
Eu resolvi isso adicionando uma entrada à existente ItemGroup
<ItemGroup>
<Compile Remove="Common\**" />
<Content Remove="Common\**" />
<EmbeddedResource Remove="Common\**" />
<None Remove="Common\**" />
<!-- new added item -->
<None Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
Agora, com esse item, o FinalBuilder localiza o local do AssemblyInfo e modifica o arquivo. Embora a ação None
permita que o MSBuild / DevEnv ignore essa entrada e não reporte mais um erro com base na Compile
ação que geralmente acompanha a entrada Informações sobre a montagem nos proj
arquivos.
C: \ Arquivos de programas \ dotnet \ sdk \ 2.0.2 \ Sdks \ Microsoft.NET.Sdk \ build \ Microsoft.NET.Sdk.DefaultItems.targets (263,5): erro: itens 'Compilar' duplicados foram incluídos. O .NET SDK inclui itens de 'Compilação' do diretório do projeto por padrão. Você pode remover esses itens do arquivo do projeto ou definir a propriedade 'EnableDefaultCompileItems' como 'false' se desejar incluí-los explicitamente no arquivo do projeto. Para mais informações, consulte https://aka.ms/sdkimplicitititems . Os itens duplicados foram: 'AssemblyInfo.cs'