工具:Visual Studio 2015,SSDT
我有一个Visual Studio SQL项目,它可以自行运行。我按照预期运行我的构建和dacpac文件在debug \ bin \ * .dacpac中。
问题是这个SQL项目是WinForms解决方案的一部分。
我已将SQL项目作为项目参考包含在Winforms项目中。
看起来Visual Studio只将dll从项目引用bin文件夹复制到输出路径bin \ debug文件夹中。
如何配置Visual Studio以将dacpac文件复制到winform项目的bin \ debug文件夹(outputpath)?
使用项目本身包含的其他文件,这很容易。我可以编辑文件属性以始终复制到输出路径。对于BIN输出,您不能这样做,因为dacpac文件是构建输出,而不是项目本身的一部分。
答案 0 :(得分:5)
如何配置Visual Studio以将dacpac文件复制到winform项目的bin \ debug文件夹(outputpath)?
您可以在SQL项目的Pre-build event
中的Winforms Project 或的Post-build event
中添加复制任务。
构建后事件:
xcopy /y "$(ProjectDir)$(OutDir)*.dacpac" "$(SolutionDir)YourWindowsFormsProjectName\$(OutDir)"
Winform 项目中的预建活动:
xcopy /y "$(SolutionDir)YourSQLProjectName\$(OutDir)*.dacpac" "$(ProjectDir)$(OutDir)"
以下是一些常用的xcopy
开关:
/I - treat as a directory if copying multiple files
/Q - Do not display the files being copied.
/S - Copy subdirectories unless empty.
/E - Copy empty subdirectories.
/Y - Do not prompt for overwrite of existing files.
/R - Overwrite read only files.
希望得到这个帮助。