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)。
我有一个 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)。