Configuration Manager仅显示Debug

时间:2008-11-03 17:07:57

标签: visual-studio visual-studio-2008 configuration build-environment

我在ASP.NET应用程序上使用Visual Studio 2008,该应用程序已部署到测试服务器。我想在没有调试信息的情况下进行生成,但是配置管理器只在我的项目的配置下拉列表中显示“Debug”。

我的其他Visual Studio项目显示“Debug”,“Release”,“New ...”和“Edit ...”。

为什么我看不到发布选项,或新的和编辑命令?

4 个答案:

答案 0 :(得分:24)

ASP.NET网站不使用配置管理器来确定编译中是否包含调试信息。您必须在web.config文件中进行设置。据我所知,Visual Studio永远不会自动将调试更改为“false”。

web.config文件中找到此部分,并将其更改为“false”:

<!--
    Set compilation debug="true" to insert debugging
    symbols into the compiled page. Because this
    affects performance, set this value to true only
    during development.
-->

<compilation debug="true">

如果您在IDE中运行您的网站,Visual Studio将询问您是否希望将其从false更改为true,但不幸的是,它不会反向发布(这对我来说似乎更重要)。

如果解决方案中有多个项目,并且其中至少有一个项目支持发布配置(例如DLL),它将显示在配置下拉列表中。但是,选择发布版仍然​​不会影响网站。

答案 1 :(得分:1)

在查看了最佳答案并在几个小时内解决了这个问题后,我遇到了这个答案。我的解决方案是添加一个完整的应用程序:通常使用一个空的网站,但同样的问题是发布没有显示。我在解决方案中添加了一个完整的应用程序,然后允许我在解决方案中部署我的项目,因为添加完整的应用程序还在下拉列表中添加了“release”选项。我非常感谢这些建议,但不确定为什么这个工具如此古怪。再次感谢您的建议。

答案 2 :(得分:0)

解决方案的配置管理器允许您删除这些默认构建配置中的任何一个(或两个)(通过上面提到的编辑...选项)。我敢打赌有人删除了Release配置。

您可以通过重新创建它来取回它,或者从您从头开始制作的解决方案中快速复制相应的行。文件差异显示以下内容:

默认解决方案文件:

GlobalSection(SolutionConfigurationPlatforms) = preSolution
    Debug|Any CPU = Debug|Any CPU
    Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
    {EDD50911-B94E-49A4-A08B-A2E91228A04B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
    {EDD50911-B94E-49A4-A08B-A2E91228A04B}.Debug|Any CPU.Build.0 = Debug|Any CPU
    {EDD50911-B94E-49A4-A08B-A2E91228A04B}.Release|Any CPU.ActiveCfg = Release|Any CPU
    {EDD50911-B94E-49A4-A08B-A2E91228A04B}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection

手动删除发布配置后的解决方案:

GlobalSection(SolutionConfigurationPlatforms) = preSolution
    Debug|Any CPU = Debug|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
    {EDD50911-B94E-49A4-A08B-A2E91228A04B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
    {EDD50911-B94E-49A4-A08B-A2E91228A04B}.Debug|Any CPU.Build.0 = Debug|Any CPU
EndGlobalSection

答案 3 :(得分:0)

该过程已更改,您只需在发布过程的设置部分检查2个底部复选框,如图所示。在bin文件夹中,您将找到dll。

image

希望有所帮助

eiran