【问题标题】:Exclude destination files when publishing project from visual studio从 Visual Studio 发布项目时排除目标文件
【发布时间】:2016-11-23 15:05:27
【问题描述】:

所以只是对我的设置的快速概述。我正在使用 Visual Studio 2015,该项目是一个 mvc Web 应用程序,我使用 Web 部署来发布网站。

目前我在发布配置文件中设置了这些选项

所以基本上我的问题是我想保留生产环境中存在的一些文件夹和文件,但同时我想删除我的项目中不再存在的其他文件。

例如,我们将数据库连接保存在站点根目录中的单独文件“web.connectionstrings.config”中。该文件在我的项目中,但内容设置为无(这是因为该文件未检入源代码管理,因此我不想发布它)。但正因为如此,它也想在目标服务器上删除它。

另一个例子是日志文件夹。我不想在生产服务器上删除它,但是因为这个文件夹是自动生成的,而不是在我的项目中,所以它想删除它。

我已经关注了这个链接https://www.asp.net/web-forms/overview/deployment/advanced-enterprise-web-deployment/excluding-files-and-folders-from-deployment

但是我只是收到以下错误

Web 部署任务失败。 (无法识别的跳过指令“skipaction”。必须是以下之一:“objectName”、“keyAttribute”、“absolutePath”、“xPath”、“attributes..”)

我也关注了这个答案https://stackoverflow.com/a/29688263/5878196

但这会产生与上述相同的错误。

我尝试使用以下行直接编辑 .csproj 文件

<ExcludeFilesFromDeployment> Web.ConnectionStrings.config;Web.secrets.config; </ExcludeFilesFromDeployment> <ExcludeFoldersFromDeployment> logs </ExcludeFoldersFromDeployment>

但这似乎被忽略了。

仅供参考我也试过这个包https://github.com/ligershark/publish-ignore

我所做的任何事情似乎都被忽略了。

我只是想知道是否有人真的有任何建议或更好的方法。谢谢

【问题讨论】:

    标签: visual-studio-2015 webdeploy


    【解决方案1】:

    通过 AppVeyor 部署 Web 项目解决了这个问题,AppVeyor 在功能中内置了跳过文件/文件夹。

    【讨论】:

      猜你喜欢
      • 2011-08-31
      • 1970-01-01
      • 1970-01-01
      • 2022-07-12
      • 1970-01-01
      • 2020-11-23
      • 2018-11-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多