Visual Studio 2017始终在开发模式下部署

时间:2018-03-07 16:16:38

标签: asp.net-core publishing microsoft-web-deploy

我有一个ASP.NET核心应用程序,我试图将Web部署到服务器,无论我在配置文件向导中选择哪种构建配置,它总是部署多个appsettings文件以及PDB文件对于DLL。任何人都知道可能导致这种情况的原因吗?

1 个答案:

答案 0 :(得分:1)

如果要排除发布发布的.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)会更好。