Visual Studio 2017 始终以开发模式部署

Visual Studio 2017 Always Deploying in Development Mode

我有一个 ASP.NET 核心应用程序,我正在尝试将其执行 Web 部署到服务器,无论我在配置文件向导中 select 使用什么构建配置,它总是会部署多个应用程序设置文件以及 DLL 的 PDB 文件。有人知道是什么原因造成的吗?

如果您想排除 .pdb 文件用于发布发布,那么您可以在发布构建期间通过将下一个 属性 添加到 .csproj 文件来禁用它们的生成(找到这个 here)

<PropertyGroup>
  <DebugType Condition=" '$(Configuration)' == 'Release' ">None</DebugType>
</PropertyGroup>

关于任何配置(或非配置)文件,它将根据 CopyToPublishDirectory 属性值发布。因此,您可以再次使用 Condition 属性并拥有类似这样的东西(只是一个想法):

<ItemGroup Condition=" '$(Configuration)' == 'Debug' ">
   <Content Update="appsettings.debug.json" CopyToPublishDirectory="Always"/>
   <Content Update="appsettings.release.json" CopyToPublishDirectory="Never"/>
</ItemGroup>

<ItemGroup Condition=" '$(Configuration)' == 'Release' ">
   <Content Update="appsettings.debug.json" CopyToPublishDirectory="Never"/>
   <Content Update="appsettings.release.json" CopyToPublishDirectory="Always"/>
</ItemGroup>

但一般来说,当我们谈论配置时,最好依赖于环境设置(Dev、Prod)。