Visual studio Visual Studio/msbuild CopyToOutputDirectory-它是如何工作的?
我正在使用Visual Studio社区:Visual studio Visual Studio/msbuild CopyToOutputDirectory-它是如何工作的?,visual-studio,asp.net-core,msbuild,Visual Studio,Asp.net Core,Msbuild,我正在使用Visual Studio社区: Microsoft Visual Studio Community 2019 Version 16.4.5 VisualStudio.16.Release/16.4.5+29806.167 Microsoft .NET Framework Version 4.8.03752 我有一个非常简单的ASP.Net核心网站/应用程序项目,具有以下目录结构: website /bin /www /about /images 注意:we
Microsoft Visual Studio Community 2019
Version 16.4.5
VisualStudio.16.Release/16.4.5+29806.167
Microsoft .NET Framework
Version 4.8.03752
我有一个非常简单的ASP.Net核心网站/应用程序项目,具有以下目录结构:
website
/bin
/www
/about
/images
注意:webroot目录不是wwwroot,而是www
项目文件(.csproj)包含以下内容(将所有子目录/文件复制到输出目录):
结果:
/bin
/Debug
/netcoreapp3.0
/Properties
/runtimes
(缺少/www和所有子目录和文件!)-为什么???
如果在开发人员命令提示符下使用msbuild.exe,也会得到相同的结果;在配置方面没有区别(调试与发布)
我假设www目录(以及所有子目录)和文件将被复制到输出目录——但显然,这并没有发生。我不明白为什么会忽略CopyToOutputDirectory;我遗漏了一些东西,但是搜索文档并没有得到任何答案
如有任何想法/建议,将不胜感激
提前感谢。更新: 刚刚在项目(.csproj)文件中更改了以下内容:
总是
致:
总是
使用Visual Studio:生成->重建解决方案(成功)
还尝试使用msbuild.exe(成功)
现在www目录和所有子目录/文件都出现在输出中——为什么?我怀疑,因为我没有使用默认的“wwwroot”作为内容目录,使用不起作用;但这只是一个理论;我只知道它是有效的
对于那些好奇的人来说,这一联系在描述和之间的差异时也很有用:
BUILD -> Rebuild Solution
/bin
/Debug
/netcoreapp3.0
/Properties
/runtimes
<ItemGroup>
<Content Update="www\**\*">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
</ItemGroup>
<ItemGroup>
<None Update="www\**\*">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
</ItemGroup>