2009-06-22 12 views

Odpowiedz

17

Możesz utworzyć cel, aby sprawdzić, czy wszystkie pliki Treści znajdują się fizycznie na dysku i zgłaszać błąd, jeśli tak nie jest. Oto taki cel

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

można upewnić się, że cel ten jest wykonywany za każdym razem dodając go do InitialTargets atrybutu elementu projektu. Na przykład

<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

Można również dodać warunek błędu w dostępny BeforeBuild docelowa w .csproj tak:

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

BeforeBuild będzie zawsze wykonywany podczas budowania projekt, więc nie musisz dodawać celu do atrybutu InitialTargets właściwości Project.

Powiązane problemy