Frage

Ich habe mehrere AssemblyInfo.cs-Dateien als Teil vieler Projekte in einer einzigen Lösung, die ich automatisch als Teil von TeamCity erstelle.

Um das msbuild-Skript wartbarer zu machen, möchte ich die AssemblyInfo-Community-Aufgabe in Verbindung mit einer ItemGroup verwenden können, z. B.

<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)" />

Was offensichtlich nicht funktioniert, da OutputFile keine referenzierte ItemGroup sein kann.

Weiß jemand, wie das funktioniert?

War es hilfreich?

Lösung

Versuchen Sie das @ auf einer%, wie unter

Ändern
<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)" />

Dies erzeugt einen Aufruf für jeden Eintrag in AllAssemblyInfos.

Haben Sie einen Blick auf diese Artikel auch helfen sollte.

http: //blogs.msdn.com/aaronhallberg/archive/2006/09/05/msbuild-batching-generating-a-cross-product.aspx

Andere Tipps

Wir verwenden „verlinkte“ Dateien im Projekt.Projektmappen-Explorer -> Vorhandenes Element hinzufügen -> ..Datei aussuchen ..->arrow_on_left_of_add_button -> Als Link hinzufügen

Dann wird die ausgewählte Datei (vorerst AssemblyInfo.cs) nicht in das Projektverzeichnis kopiert, sondern nur vom angegebenen Pfad aus verlinkt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top