31

我用过 VS 2010 和 VS2008。当我将它们与我的 WCF 服务项目一起使用时,我的 .PDB 文件总是在我发布网站时被复制。现在,使用 VS2012,当我发布网站时,不会复制任何 PDB 文件。正在为调试和发布创建 PDB 文件,但是当我执行发布网站(针对调试或发布)时没有任何反应。

我已经搜索了这个论坛(和互联网)。我的解决方案如下: 1)WCF 服务库项目。2) WCF 服务网站

当我第一次发布时,我必须创建一个配置文件并且我这样做了。

当我右键单击 WCF 服务库项目并选择属性时,我只会看到应用程序、构建、构建事件、调试、资源、服务、设置、引用路径、签名、WCF 选项、代码分析的选项卡。我没有获得打包/发布 Web 和其他我曾经获得的项目的选项卡。我试图右键单击我的 WCF 服务网站项目,但属性页中没有任何内容表明这一点。

我什至尝试将项目添加到我的 .pubxml 文件中,但这不起作用。

我认为我不需要更新我的调试选项来指定符号位置。我认为我的 Publish 应该像 2008 年和 2010 年那样“做”。有什么建议吗?

提前致谢。

4

2 回答 2

56

在 VS2012 网站发布中,默认情况下总是排除符号。为什么?它归结为网站项目实际上没有构建配置的设计问题。如果您在解决方案处于发布模式时查看 VS 中的配置管理器,网站项目将始终处于调试模式;没有其他选择。这是因为网站项目不是基于 MSBuild,因此不尊重 MSBuild 配置。

相反,您可以编辑 .pubxml 以告诉它包含符号。尝试添加这个:

<PropertyGroup>
  <ExcludeGeneratedDebugSymbol>False</ExcludeGeneratedDebugSymbol>
</PropertyGroup>
于 2013-09-27T15:56:06.497 回答
15

对我来说,这有效(在发布配置文件中):

<PropertyGroup>
   ...
   <DebugSymbols>True</DebugSymbols>
</PropertyGroup>

或使用发布向导:

在此处输入图像描述

于 2015-03-25T15:55:10.140 回答