C# “构建行动”是什么;内容“;做

C# “构建行动”是什么;内容“;做,c#,visual-studio,.net-core,C#,Visual Studio,.net Core,我正在编写一个.NET Core 2控制台应用程序,其中有一些文件要复制到输出目录。我将“复制到输出目录”设置为true,将构建操作设置为“嵌入式资源”。文件像一个符咒一样被复制到目录中。但是,如果我将构建操作设置为“内容”,它也会这样做 微软官方文件说: 内容:标记为内容的文件可以通过调用Application.GetContentStream作为流检索。对于ASP.NET项目,这些 文件在部署时作为站点的一部分包含 嵌入式资源:文件作为要嵌入程序集中的资源传递给编译器。你可以打电话 Sys

我正在编写一个.NET Core 2控制台应用程序,其中有一些文件要复制到输出目录。我将“复制到输出目录”设置为true,将构建操作设置为“嵌入式资源”。文件像一个符咒一样被复制到目录中。但是,如果我将构建操作设置为“内容”,它也会这样做

微软官方文件说:

  • 内容:标记为内容的文件可以通过调用Application.GetContentStream作为流检索。对于ASP.NET项目,这些
    文件在部署时作为站点的一部分包含
  • 嵌入式资源:文件作为要嵌入程序集中的资源传递给编译器。你可以打电话 System.Reflection.Assembly.GetManifestResourceStream以读取文件 来自大会
因此,我认为如果我将构建操作设置为“Content”,文件将自动复制到输出目录,而不必显式地设置标志“Copy to output directory”。但事实似乎并非如此

那么,“内容”实际上是做什么的呢?什么时候我必须使用它而不是“嵌入式资源”?
关于何时使用“内容”和何时使用“嵌入式资源”的示例将非常好。

文档可能重复和重复的问题很清楚。我建议实际的问题是
为什么“复制到”操作与“构建操作”分开,为什么一个不改变另一个?
当你这样问时,显然这是个坏主意。自动更改会造成很多混乱。您可能也不想在开发过程中复制大文件,这会显著增加构建时间。您是否询问有关.net核心解决方案的内容?完全合法的问题,因为文档只讨论asp.net。虽然duplicate提到“在控制台或WinForms应用程序中,它什么都不做”,所以可能什么都没有changed@PanagiotisKanavos不幸的是,这并不能回答我的问题。然而,我发现这使它更清楚了一点,但是这个线程中写的“内容输出组”是什么?@Sinatr所以唯一的区别是“内容”不会被编译,而“嵌入式资源”会在.dll中编译?但是为什么要编译它并将其移动到输出文件夹?