1

使用 MsBuild 4.0,我包含了一个生成项目源文件之一的预构建事件。但它会在文件生成之前寻找文件:

错误 CS1504:无法打开源文件“c:\src\Data\Main.Designer.cs”(“未指定错误”)

该文件由 DbMetal/SqlMetal 生成。有什么办法可以使这项工作?

4

1 回答 1

4

将您的操作移动到 BeforeBuild 目标。在项目 *.csproj 中,默认情况下它是注释的。取消注释并使用Exec 任务调用 DBMetal

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

如果您正在使用Datasource.db并且想要生成Main.Designer.cs ,您可以为目标指定输入和输出参数。它将节省您调用 DBMetal 并重建项目本身。

<Target Name="BeforeBuild"
        Inputs="Datasource.db"
        Outputs="Main.Designer.cs">
    <Exec Command="<your prebuild action 1>"/>
    <Exec Command="<your prebuild action 2>"/>
</Target>
于 2011-02-09T15:27:12.440 回答