我有一组设置为BuildAction=embedded resources
和CopyToOutDirectory=CopyAlways
的SQL脚本。
它似乎没有复制到bin
目录。
我必须将它们作为EmbeddedResources
,但不满足。有办法吗?
EmbeddedResources
,正如其名称所暗示的那样,已“嵌入”在程序集中,因此不再将它们复制到输出目录中。
如果您“双向需要”,则可以使用如下所示的构建后任务:
xcopy $(ProjectDir)\MyFile.ext $(TargetDir)\
但是如果您添加/删除需要复制的文件,则需要维护此脚本。还请记住,如果在输出目录中更改该文件,则不会更改程序中使用的嵌入式资源。
您可以使用“ Link”元数据设置目标文件夹
例如:使用此文件将a.dll复制到“ bin”文件夹中
<EmbeddedResource Include="Resources\a.dll" Link="..\bin\a.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</EmbeddedResource>
有关更多参考信息,请访问https://github.com/Microsoft/msbuild/issues/2795