Utilizzo di AssemblyInfo per aggiornare automaticamente più file AssemblyInfo.cs
-
02-07-2019 - |
Domanda
Ho diversi file AssemblyInfo.cs come parte di molti progetti in un'unica soluzione che sto creando automaticamente come parte di TeamCity.
Per rendere più gestibile lo script msbuild, vorrei poter utilizzare l'attività della community AssemblyInfo insieme a un ItemGroup, ad esempio
<ItemGroup>
<AllAssemblyInfos Include="..\**\AssemblyInfo.cs" />
</ItemGroup>
<AssemblyInfo AssemblyTitle="" AssemblyProduct="$(Product)" AssemblyCompany="$(Company)" AssemblyCopyright="$(Copyright)"
ComVisible="false" CLSCompliant="false" CodeLanguage="CS" AssemblyDescription="$(Revision)$(BranchName)"
AssemblyVersion="$(FullVersion)" AssemblyFileVersion="$(FullVersion)" OutputFile="@(AllAssemblyInfos)" />
Che palesemente non funziona perché OutputFile non può essere un ItemGroup referenziato.
Qualcuno sa come farlo funzionare?
Soluzione
Prova a cambiare @ in% come di seguito
<ItemGroup>
<AllAssemblyInfos Include="..\**\AssemblyInfo.cs" />
</ItemGroup>
<AssemblyInfo AssemblyTitle="" AssemblyProduct="$(Product)" AssemblyCompany="$(Company)" AssemblyCopyright="$(Copyright)"
ComVisible="false" CLSCompliant="false" CodeLanguage="CS" AssemblyDescription="$(Revision)$(BranchName)"
AssemblyVersion="$(FullVersion)" AssemblyFileVersion="$(FullVersion)" OutputFile="%(AllAssemblyInfos)" />
Questo crea una chiamata per ogni voce in AllAssemblyInfos.
Dai un'occhiata anche a questo articolo, dovrebbe aiutare.
Altri suggerimenti
Usiamo " collegato " file nel progetto. Esplora soluzioni - > Aggiungi elemento esistente - > .. select_file .. - > arrow_on_left_of_add_button - > Aggiungi come collegamento
Quindi il file selezionato (AssemblyInfo.cs per ora) non viene copiato nella directory del progetto, bud viene collegato solo dal percorso specificato.