在 Visual Studio 2008 中部署 ASP.NET MVC 应用程序

Posted

技术标签:

【中文标题】在 Visual Studio 2008 中部署 ASP.NET MVC 应用程序【英文标题】:Deploying ASP.NET MVC application in Visual Studio 2008 【发布时间】:2009-10-01 17:38:06 【问题描述】:

我可以使用 Visual Studio 2008 中的复制网站工具将 MVC 应用程序部署到我的托管服务器吗?但是,网站 菜单甚至不会在打开 MVC 项目的 Visual Studio 中显示。部署 MVC 应用程序的最佳实践是什么?谢谢。

【问题讨论】:

【参考方案1】:

ASP.NET MVC 不是一个网站,它是一个 Web 应用程序。您需要部署它,或者只是构建它然后复制它。

另外,取决于您的托管公司,他们可能没有可供您使用的 System.Web.MVC 程序集。

因此,您还需要在您的 bin 目录中部署它。您可以通过转到引用,选择 System.Web.MVC 来获得它。右键点击 -?特性。然后本地复制。

编辑: [包括下面的额外cmets,以防万一有人错过] 在发布 Web 应用程序之前,您需要做一个额外的步骤。您需要将复制本地属性设置为 true 到以下引用 System.Web.Mvc、System.Web.Routing 和 System.Web.Abstractions。如果你愿意,你可以直接去官方文档。

【讨论】:

+1 将添加该内容。但不妨巩固这个答案。如果主机使用 IIS6,可能需要为站点打开通配符 此外,有关“网站”和“网络应用程序”之间差异的说明,请参阅:***.com/questions/398037/… 您需要引用多个程序集。它们还有一个名为 copy local 的属性,可让您不必手动将程序集复制到您的 bin 文件夹。请参阅我在 dove 的回答中的评论,我也认为这是解决这个问题的最佳答案。【参考方案2】:

右击,发布。如果您想要非常简单的答案。

最佳实践是一个非常广泛的问题,涉及构建脚本、测试等.....

【讨论】:

除了您的“简单”答案之外,您还需要在发布 Web 应用程序之前执行一个额外的步骤。您需要将复制本地属性设置为 true 到以下引用 System.Web.Mvc、System.Web.Routing 和 System.Web.Abstractions。如果你愿意,你可以直接去官方文档。 msdn.microsoft.com/en-us/library/dd410407.aspx @Raul 正确,但是我向 JackM 上面的回答鞠躬,他注意到了这一点。不过谢谢。【参考方案3】:

最好的做法肯定是拥有一个构建脚本来自动化构建、测试和部署过程,因此您所要做的就是运行一个批处理文件或命令来运行整个过程。我们在这里非常成功地使用 NAnt 构建、测试、检查代码覆盖率并部署到测试环境和生产环境。

无需记住需要复制的文件、文件的去向以及部署后需要进行哪些配置更改,从而节省了大量时间。

【讨论】:

【参考方案4】:

我很高兴使用现在的 RTW Web 部署工具 (http://www.iis.net/extensions/WebDeploymentTool)。从 Visual Studio 2008 我在本地发布 Web 应用程序以暂存内容,然后使用 Web 部署工具与主机服务器同步。

【讨论】:

以上是关于在 Visual Studio 2008 中部署 ASP.NET MVC 应用程序的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Visual Studio 2012 中使用 SQL Server Express 2008 部署 wpf 应用程序?

Visual Studio 2008 部署到 Intermec CK3

如何部署和注册支持多个版本的 Visual Studio(2005、2008、2010)的 VSPackage?

Visual Studio 2008 64 位部署项目未按预期部署 64 位 VC90 合并模块

Visual Studio项目需要部署后才能启动

如何在 Visual Studio 2010 中使用 Visual Studio 2008 创建的 DLL?