在我的Visual Studio项目,我有,我想包括在输出,但不编译或嵌入的文件。
据我所知,有2种方式来做到这一点。
- 设置生成操作的文件,以“内容”
- “复制到输出目录”设置为“一直拷贝”或“复制,如果新”
谁能告诉我有什么区别和方案中的每个选项是适当的?
在我的Visual Studio项目,我有,我想包括在输出,但不编译或嵌入的文件。
据我所知,有2种方式来做到这一点。
谁能告诉我有什么区别和方案中的每个选项是适当的?
当设置Build Action
到Content
,该文件将不会被编译,并将把内容输出小组。
无论文件获取副本或不依赖于Copy to Output Directory
设置在这一点上。
当然,如果你设置Copy Always
一个文件,它可以被编译, 然后再复制。
请参阅文件属性在MSDN:
内容 - 该文件不会被编译,而是包含在内容输出小组。 例如,该设置是.htm或其他类型的Web文件的默认值。
内容生成操作在WPF项目(可能是太ASP)明显的效果。
它增加了
[assembly: System.Windows.Resources.AssemblyAssociatedContentFileAttribute("filename")]
到WpfApplication1_Content.g.cs
。 阅读关于AssemblyAssociatedContentFileAttribute
。
在WinForms和控制台应用程序(OP可以使用什么),它并没有这样做,所以有以无动作没有什么区别时建设。
在此评论 ,我也发现有关部署效果的说明:
还要注意使用时的内容将包括一键式部署 ,但选择无不会即使“如果较新的复制”。
也许这个工程即使控制台和WinForms应用程序(我没试过)。
一直拷贝也将触发,即使没有代码已经改变溶液中的重建项目。