25

我有我的 CI 服务器设置来构建和部署我的所有环境,包括我的生产环境。据我所知,我的所有项目文件的设置和 CI 设置在我的暂存环境构建和我的生产环境构建之间是相同的。但是当我部署到生产环境时,没有像暂存中那样与 DLL 文件并排放置的 PDB 文件。这是部署每个应用程序的脚本:

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\MSBuild.exe %location% ^
    /p:Configuration=%configName% ^
    /p:DeployOnBuild=True ^
    /p:DeployTarget=MSDeployPublish ^
    /p:AllowUntrustedCertificate=True ^
    /p:MSDeployPublishMethod=WMSvc ^
    /p:CreatePackageOnPublish=True ^
    /p:MsDeployServiceUrl=https://%serverName%:8172/MsDeploy.axd ^
    /p:DeployIisAppPath=%siteName% ^
    /p:UserName=%username% ^
    /p:Password=%password%

所以看起来当 Configuration=Release 时 PDB 文件被留下了,尽管它们是在构建服务器上生成的。有任何想法吗?

4

2 回答 2

48

如果要在发布中包含 pdb 文件,请转到项目属性和打包/发布 Web 选项卡,取消选中“排除生成的调试符号” 设置

于 2013-01-22T17:31:10.603 回答
21

如果您想在 deploy(publish) 上包含 pdb 文件,即使对于 Release,也要在项目文件中添加以下属性:

<ExcludeGeneratedDebugSymbol>False</ExcludeGeneratedDebugSymbol>
于 2014-10-14T13:13:03.380 回答