调试 ASP.NET MVC 应用程序时避免部署

Posted

技术标签:

【中文标题】调试 ASP.NET MVC 应用程序时避免部署【英文标题】:Avoiding deployment when debugging an ASP.NET MVC application 【发布时间】:2010-03-26 19:43:40 【问题描述】:

一旦 asp.net MVC 项目有一个与之关联的 Web 部署项目,似乎没有办法避免在构建 MVC 项目时进行部署。我仍然希望能够在本地调试我的 MVC 项目并避免部署它的新版本。当我尝试调试时,如何配置 Web 部署项目以跳过部署步骤?

稍微澄清一下这个问题:我希望在我进行发布构建时部署构建过程,而不是在我进行调试构建时部署。每次在调试和发布版本之间切换时,应该有一种方法可以配置它,而无需手动修改解决方案中的项目。

【问题讨论】:

【参考方案1】:

卸载您的部署项目。 (在VS中右键单击项目->卸载项目)并在您实际要部署时重新加载它

【讨论】:

感谢卸载建议,但这对我们的 VS 解决方案不实用。我们经常在一个 sln 中有多个部署项目,如果您忘记先卸载它们,那么您会在 VS IDE 中卡住一段时间,然后才能取消构建。如果 sln 以这种方式保存,我也不知道这会对我们的自动化构建产生什么影响。 我相信这个设置保存在 .suo 文件中,不应将其签入源代码管理,因此不会影响您的自动构建。它们绝对不会存储在 .sln 文件中。【参考方案2】:

在解决方案属性中,展开配置属性并转到配置项。每个适当的项目都有一个部署复选框。

我使用它来阻止报告项目在每次构建时部署。

【讨论】:

感谢您的建议,但除非我遗漏了什么,否则这似乎是另一种手动干预解决方案。我看到一个设置部署项目的选项仅用于发布版本,所以我这样做了。然后我做了一个调试构建,它仍然部署。除非我遗漏了什么,否则这也行不通。哦,是的,这是 VS 2008。 在一位同事的帮助下,我终于能够使用这个选项进行相应的配置了。此处列出的步骤并不是很清楚,但只要您加载配置管理器按钮并为每个配置设置构建选项,您就应该能够关闭构建以进行调试模式。【参考方案3】:

右键单击您的 Web 部署项目并选择“卸载项目”选项。这是一个快速/简单/临时的解决方案,可以让你做你想做的事。相信我,我知道等待部署包编译和构建是多么痛苦! :-)

【讨论】:

感谢您的回答。这是一个很好的解决方法,但不能真正回答我的问题。【参考方案4】:

有两种不同的解决方案:一种不包括部署项目,另一种包括部署项目。

这将允许您在打开解决方案时选择是使用应用程序代码还是使用应用程序 + 部署代码进行开发。

【讨论】:

以上是关于调试 ASP.NET MVC 应用程序时避免部署的主要内容,如果未能解决你的问题,请参考以下文章

将 ASP.NET MVC NHibernate 应用程序部署到 IIS7 时出错

IIS Express 在调试 ASP.NET MVC 时出现拒绝访问错误

ASP.Net MVC Recaptcha Jquery Ajax 问题

第 2 次、第 3 次 ASP.NET MVC 5 的慢速调试

从 GitHub 持续部署在 Azure 中失败(ASP.NET 5 和 MVC 6)

在 asp .net MVC4 应用程序中,调试在 javaScript 代码中不起作用