我有一个用ASP.NET开发的网站。我正在使用Visual Studio 2015.当我右键单击并点击发布网站时,该网站会正确发布,但我的资源文件夹会被遗忘。下面是Visual Studio中解决方案资源管理器的样子
但是我在这里发布之后是放在Azure上的文件(通过FileZilla访问)
如何告诉Visual Studio将Resources文件夹与网站的其余部分一起发布?
答案 0 :(得分:17)
您现在需要设置两个属性。
Build Action Content
Copy to Output Directory Do not copy
对要作为内容发布到Web服务器的所有文件执行此操作。
构建操作属性指示Visual Studio在执行构建时对文件执行的操作。构建操作可以具有以下几个值之一:
无。 不是您想要的。该文件未包含在项目输出组中,也未在构建过程中编译。一个示例是一个文本文件,其中包含您不希望发布到Web服务器的文档,例如自述文件。
编译。 不是您想要的。将文件编译到构建输出中。此设置用于代码文件。换句话说,我们编译文件并将其粘贴到bin
目录中。
内容。 这就是您想要的。该文件未编译,但包含在内容输出组中。例如,此设置是.htm或其他类型的Web文件的默认值。 “内容输出组”是Visual Studio将发布的文件列表,同时还保持相同的目录结构。
嵌入式资源。 不是您想要的。此文件作为DLL或可执行文件嵌入在主项目构建输出中。它通常用于资源文件。换句话说,它不仅会进入bin
目录,还会嵌入.dll
或.exe
文件中。
复制到输出目录。此属性指定将所选源文件复制到输出目录的条件。输出目录通常是bin
。
答案 1 :(得分:1)
答案 2 :(得分:1)
如果像我一样,您正在使用Visual Studio 2019,只需右键单击该文件夹,然后选择发布“文件夹名称”
答案 3 :(得分:-2)
确保您的Resources文件夹中的内容具有正确的"复制到输出目录"属性。右键单击要复制的文件,选择“属性”,然后在“高级”部分中,查看“复制到输出目录”下的值。通常这被设置为"不要复制"默认情况下,因为大多数内容都打包在.dll中。将其更改为"如果更新则更改"让它带来文件。它也会带来文件夹结构。