2013-02-26 6 views
6

Ho una definizione build impostata nella mia istanza TFS 2012. In questa definizione di build voglio passare un argomento personalizzato e accedere a detto argomento nel mio file .csproj. Per esempio:Passare il valore della proprietà da TFS Build Definition a proj file

MSBuild Arguments: /p:MyFoo=1 

Nel mio file Csproj io voglio fare questo:

<ItemGroup Condition=" '$(MyFoo)' == '1' "> 

Questo è possibile, o sono io che vado su questo in modo errato?

risposta

10

Questo è più che possibile, è molto facile da fare. Modifica la tua definizione di build, sotto la scheda del processo espandi la sezione "avanzata" e vedrai una proprietà chiamata "Argomenti MSbuild" aggiungere l'argomento nel formato nella domanda. per esempio. /p:MyFoo=1

ad es.

adding msbuild arguments to TFS build definition

È possibile anche inserire gli argomenti quando si coda una build

enter image description here

+0

io non sono sicuro che questo risponde totalmente alla mia domanda. Stai dicendo che dovrei essere in grado di fare riferimento a $ (MyFoo) nel mio file proj? – Matt

+0

@Matt sì, questo passerà l'argomento a MSbuild e $ (MyFoo) sarà disponibile per tutte le soluzioni/progetti nella compilazione. –

+1

È possibile visualizzare l'attività di msbuild all'interno del proprio modello di processo di costruzione, chiama il msbuild per compilare la propria soluzione/progetto - gli argomenti MSBuild vengono passati in aggiunta ad alcuni già definiti. Se il tuo valore è qualcosa di molto statico, puoi aggiungerlo qui in modo da non doverlo definire per ogni definizione di build. Votato – drk

Problemi correlati