如何让VS 2022 C#项目中的非标准文件夹随发布同步至Web服务器
解决VS 2022 C#项目发布时非标准文件夹未同步的问题
方法1:设置文件夹及内部文件的发布属性
- 在解决方案资源管理器中找到目标文件夹,若文件夹为空,先创建一个占位文件(如
placeholder.txt) - 右键点击文件夹内的文件(包括占位文件),在属性窗口中将复制到输出目录设置为「如果较新则复制」或「始终复制」
- 注:空文件夹会被MSBuild忽略,必须添加至少一个文件才能触发同步
方法2:手动修改项目文件(.csproj)
直接编辑项目的.csproj文件,添加对目标文件夹的发布规则:
<ItemGroup> <!-- 包含文件夹下所有文件及子文件夹,发布时同步 --> <Content Include="YourFolderName\**"> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> </Content> <!-- 确保空文件夹被创建的占位文件配置 --> <Content Include="YourFolderName\placeholder.txt"> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> </Content> </ItemGroup>
将YourFolderName替换为实际文件夹名称,保存后重新发布项目即可。
方法3:检查发布配置
- 打开发布向导,进入「设置」选项卡
- 点击「文件」按钮,确认目标文件夹及内部文件已被勾选为要发布的内容
- 若使用文件系统发布,可勾选「保留目标位置的额外文件(不要删除未列出的文件)」,避免服务器上的文件夹被误删
内容的提问来源于stack exchange,提问作者Mike Chinni
相关产品推荐
相关产品推荐

