2009-06-22 8 views

risposta

17

È possibile creare un obiettivo di controllare per assicurarsi che tutti i file contenuti si trovano fisicamente su disco e alzare un errore se non è questo il caso. Ecco un tale obiettivo

<Target Name="ValidateContentFiles"> 
    <Error Condition="!Exists(%(Content.FullPath))" 
     Text="Missing Content file [%(Content.FullPath)]"/> 
</Target> 

Si può fare in modo che questo obiettivo viene eseguito ogni volta aggiungendolo ai InitialTargets attributo dell'elemento progetto. Per esempio

<Project InitialTargets="ValidateContentFiles" 
     ToolsVersion="3.5" DefaultTargets="Build" 
     xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 

Sayed Ibrahim Hashimi

My Book: Inside the Microsoft Build Engine : Using MSBuild and Team Foundation Build

0

È inoltre possibile aggiungere la condizione di errore in BeforeBuild Obiettivo disponibile in Csproj come questo:

<Target Name="BeforeBuild"> 
<Error Condition="!Exists(%(Content.FullPath))" 
Text="Missing Content file [%(Content.FullPath)]"/> 
</Target> 

BeforeBuild sarà sempre eseguire quando si costruisce un progetto e quindi non è necessario aggiungere la destinazione all'attributo InitialTargets della proprietà Project.

Problemi correlati