如何在解决方案输出路径中包含构建中的dacpac文件

问题描述 投票:3回答:1

工具: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文件是构建输出,而不是项目本身的一部分。

c# visual-studio-2015 msbuild sql-server-data-tools dacpac
1个回答
5
投票

如何配置Visual Studio以将dacpac文件复制到winform项目的bin \ debug文件夹(outputpath)?

您可以在Winforms项目的Pre-build event或SQL项目的Post-build event中添加复制任务。

SQL项目中的后期构建事件:

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.

希望这有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.