2011-02-09 61 views
1

使用MsBuild 4.0我包含一個預生成事件,生成一個項目源文件。 但尋求生成之前的文件:如何將自動生成的文件包含在MsBuild項目中?

錯誤CS1504:源文件 'C:\ SRC \ DATA \ Main.Designer.cs' 無法打開( '未指定的錯誤')

該文件由DbMetal/SqlMetal生成。 有什麼辦法可以使這項工作?

回答

4

將您的動作移至BeforeBuild目標。在項目* .csproj中,它默認爲註釋。 取消它,並呼籲DBMetal使用Exec task

<Target Name="BeforeBuild"> 
    <Exec Command="<your prebuild action 1>"/> 
    <Exec Command="<your prebuild action 2>"/> 
</Target> 

如果您正在使用Datasource.db工作,並希望生成Main.Designer.cs 可以爲目標指定Input and Output parameters。這將節省您撥打DBMetal並重建項目本身。

<Target Name="BeforeBuild" 
     Inputs="Datasource.db" 
     Outputs="Main.Designer.cs"> 
    <Exec Command="<your prebuild action 1>"/> 
    <Exec Command="<your prebuild action 2>"/> 
</Target> 
相關問題