将嵌入的资源复制到输出目录

时间:2014-07-22 06:52:48

标签: c# visual-studio-2010 embedded-resource

我有一组sql脚本设置为BuildAction=embedded resourcesCopyToOutDirectory=CopyAlways

似乎没有复制到bin目录。

我必须将它们设为EmbeddedResources而不是满足 有办法吗?

2 个答案:

答案 0 :(得分:0)

正如名称已经暗示的那样,

EmbeddedResources在程序集中“嵌入”,因此它们不再被复制到输出目录。

如果你需要“双向”,你可以使用如下的后期构建任务:

xcopy $(ProjectDir)\MyFile.ext $(TargetDir)\

但如果添加/删除需要复制的文件,则需要维护此脚本 另请注意,如果您在输出目录中更改该文件,则不会更改您在程序中使用的嵌入式资源。

答案 1 :(得分:0)

您可以使用“链接” 元数据来设置目标文件夹

例如:使用此文件将a.dll复制到“ bin”文件夹

    <EmbeddedResource Include="Resources\a.dll" Link="..\bin\a.dll">
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
    </EmbeddedResource>

更多参考信息,请访问:https://github.com/Microsoft/msbuild/issues/2795