用于 Visual Studio 和 ASP.NET 的 Web 部署内容映射
本主题提供了指向文档资源的链接,这些文档资源是关于如何使用以下任何版本的 Visual Studio 将 ASP.NET Web 应用程序部署(发布)到 IIS。
Visual Studio 2012
Visual Studio Express 2012 for Web
带有 Visual Studio Web 发布更新 的 Visual Studio 2010
带有 Visual Studio Web 发布更新 的 Visual Web Developer 2010 Express
在 Visual Studio 部署工具中,部分仅可用于 Web 应用程序项目,部分仅可用于网站项目。 所有 MVC 项目都是 Web 应用程序项目。 有关 Web 应用程序项目与网站项目之间的差异的信息,请参见 Web 应用程序项目与 Visual Studio 中的网站项目。
本主题包含以下各节:
Web 应用程序项目的部署(包括 MVC)
网站项目的部署
有关 ASP.NET 部署信息的其他资源
Web 应用程序项目的部署(包括 MVC)
备注
Visual Studio 2012 中引入了新的部署功能,这些功能可以通过安装 Visual Studio Web 发布更新 在 Visual Studio 2010 中启用。Visual Studio 2012 的 MSDN 文档涵盖了新功能。但是,除非另外说明,否则外部网站中的资源将存档最初使用 Visual Studio 2010 传送的部署功能。
方案 |
主题 |
---|---|
了解 Web 应用程序项目的部署选项 |
用于 Visual Studio 和 ASP.NET 的 Web 应用程序项目部署概述 VS 2010中的 Web 部署概述文章(Vishal Joshi 的博客。 此链接指向的许多 Visual Studio 2010 资源中都有仍与 Visual Studio 2012 相关的信息。) |
查找 ASP.NET 应用程序的承载提供程序 |
|
使用 Visual Studio 部署 Web 应用程序 |
如何:使用 Visual Studio 中的一键式发布来部署 Web 应用程序项目 部署至承载提供程序(ASP.NET 网站。 有12个部分的教程序列包含部署方案的详细说明,包括多个 SQL Server Compact 数据库并且涵盖到 SQL Server 的迁移。 已更新以使用 Visual Studio 2012 RC.) 将 ASP.NET Web 应用程序部署到 Windows Azure 网站和 SQL 数据库(windowsazure.com 站点) 将 ASP.NET Web 应用程序部署到 Windows Azure 云服务和 SQL 数据库(windowsazure.com 站点) |
通过创建和安装 Web 部署包来部署 Web 应用程序 |
如何:在 Visual Studio 中创建 Web 部署包(如何在 Visual Studio IDE 上创建部署包。) 如何:使用 Visual Studio 创建的 deploy.cmd 文件安装部署包 在开发盒中使用 Web 部署包部署至 IIS 和第三方主机(Hashimi 的博客。 如何在本地计算机和支持 IIS 远程管理管理器的托管公司的 IIS 上使用 IIS 管理器安装部署包。) 在 Visual Studio 2010 上生成 Web 部署包(IIS.NET 网站。 包括创建和安装指令行包的说明。) 包安装完毕后即在任何位置发布(Hashimi 的博客。 介绍自动执行转换多个目标环境中的 Web.config 文件设置过程的 NuGet 包。) 另请参见以下方案。 |
使用持续集成 (CI) 过程在企业环境中部署 Web 应用程序 |
在企业方案中部署 Web 应用程序(ASP.NET 站点。 作为一个系列的 40 个教程说明如何使用 Visual Studio 2010 和 Team Foundation Server 2010 在 CI 过程中自动完成部署)。 为 Windows Azure 中云应用程序持续传送 (windowsazure.com 站点) 宣告使用 Team Foundation Service 持续部署到 Azure(Brian Harry 的博客) SlowCheetah XML 转换自 CI 服务器(Hashimi 的博客。 解释如何使用 SlowCheetah,SlowCheetah 是用于转换 app.config 和其他 XML 文件的 Visual Studio 外接程序。) 发布过程中如何使应用程序脱机(Hashimi 的博客。 演示如何自动完成使应用程序脱机的过程。 另请参见方案部署期间请确保应用程序脱机。) |
在部署过程中,使用 Web.config 转换来更改目标 Web.config 文件或 app.config 文件中的设置 |
Web.config 文件转换(ASP.NET 站点) 用于使用 Visual Studio 部署 Web 应用程序项目的 Web.config 转换语法 同时请参见 用于 Visual Studio 和 ASP.NET 的 Web 应用程序项目部署常见问题 中的如何禁用 Web.config 转换?以及何时使用 Web 部署参数而不是 Web.config 转换?。 |
在部署过程中,使用 Web Deploy 参数来更改目标 Web 应用程序中的设置 |
Web 部署参数化(IIS.NET 网站) Web 部署参数化操作(Vishal Joshi 的博客) Web 部署参数化与 Web.config 转换(Vishal Joshi 的博客) |
部署过程中,请确保应用程序脱机 |
部署至承载提供程序:部署仅限代码更新(ASP.NET 站点。 参见防止用户在更新期间访问生产站点一节) |
部署数据库或部署数据库更改是部署 Web 应用程序的一部分 |
如何:使用 Visual Studio 中的一键式发布来部署 Web 应用程序项目 部署至承载提供程序(ASP.NET 网站。 有12个部分的教程序列包含部署方案的详细说明,包括多个 SQL Server Compact 数据库并且涵盖到 SQL Server 的迁移。 |
在 Web 应用程序部署中单独部署数据库 |
在 SQL Server 数据库项目中引入数据(SQL Server Data Tools团队博客。 部署数据库时如何部署架构和数据。) 使用 SSDT 将数据库迁移至 SQL Azure(SQL Server Data Tools团队博客) |
部署使用成员资格和分析等 ASP.NET 应用程序服务的 Web 应用程序 |
配置使用应用程序服务的网站(ASP.NET 网站。 此教程用于网站项目,但是不包含同样用于 Web 应用程序服务的信息。) 生产网站上的用户和角色(ASP.NET 网站。 此教程用于网站项目,但是不包含同样用于 Web 应用程序服务的信息。) |
针对部署进行预编译 |
|
部署 Intranet Web 应用程序 |
|
自动执行当下不可自动执行的常见部署任务 |
在 Web 发布中设置文件夹权限(Hashimi 的博客) 如何扩展目标文件以使其包括 Web 项目包的注册表设置(Web 开发工具博客) 扩展 XML (Web.config) 转换(Hashimi 的博客。 演示如何创建自定义 XDT 转换。) Web 部署工具 (MSDeploy) 自定义提供程序采用 1(Hashimi 的博客。 演示如何创建 Web 部署自定义提供程序。) 如何打包及部署 COM 组件(Web 开发工具博客) 如何打包 .NET 程序集(Web 开发工具博客。 如何将程序集部署至 GAC。) |
配置 Web 服务器,使开发人员能使用 Web 部署将 Web 应用程序部署到服务器 |
|
配置承载提供程序的服务器 |
Microsoft ASP.NET 4 承载部署指南(Microsoft 下载中心) |
部署疑难解答问题 |
部署至承载提供程序:疑难解答(ASP.NET 网站) 关于 Web 部署的常见疑难解答问题(IIS.NET 网站) 用于 Visual Studio 和 ASP.NET 的 Web 应用程序项目部署常见问题 IIS 与 ASP.NET 开发服务器的核心差异(ASP.NET 网站) 开发配置与生产配置的常见差异(ASP.NET 网站) 在中等信任中承载 ASP.NET 应用程序(来自 Rolla 站点的4个人) |
就特定的部署问题获得帮助 |
ASP.NET 配置和部署论坛(ASP.NET 站点。 本论坛旨在回答与 ASP.NET 部署相关的问题。) |
网站项目的部署
关于网站项目和 Web 应用程序项目之间的区别的信息,请参见 Web 应用程序项目与 Visual Studio 中的网站项目。
方案 |
主题 |
---|---|
了解网站项目的部署选项 |
MSDN 上的ASP.NET 网站项目部署概述(Visual Studio 2010 文档。 Visual Studio 2012中的网站项目部署工具未更改。 同时请参见 MSDN 目录文件中本主题下列出的相关的参见帮助和演练主题。 |
使用“复制网站”工具部署网站 |
使用 Visual Studio 部署站点(ASP.NET 网站) |
使用 Windows XCopy 指令部署站点 |
确定哪些文件需要部署(ASP.NET 网站) 使用 FTP 客户端部署站点(ASP.NET 网站) |
部署预编译的网站 |
使用 Visual Studio 部署站点(ASP.NET 网站) 预编译网站(ASP.NET 网站) |
部署使用成员资格和分析等 ASP.NET 应用程序服务的网站 |
配置使用应用程序服务的网站(ASP.NET 网站) 生产网站上的用户和角色(ASP.NET 网站) |
在部署网站时部署数据库或部署数据库更改 |
部署数据库(ASP.NET 网站) 数据库开发和部署策略(ASP.NET 网站) |
部署疑难解答问题 |
IIS 与 ASP.NET 开发服务器的核心差异(ASP.NET 网站) 开发配置与生产配置的常见差异(ASP.NET 网站) 在中等信任中承载 ASP.NET 应用程序(来自 Rolla 站点的4个人) |
就特定的部署问题获得帮助 |
ASP.NET 配置和部署论坛(ASP.NET 站点。 在本论坛,您可以提出与 ASP.NET 部署相关的问题。) |
有关 ASP.NET 部署信息的其他资源
本节提供指向其他资源的链接,这些资源有助于了解如何使用 Visual Studio 和 IIS 部署工具。
以下资源提供关于 Web Deploy 的文档,这是 Visual Studio 用来执行 Web 应用程序项目部署任务的 IIS 框架。 您可以在 IIS 上的 Web 部署工具论坛中 就 Web Deploy 提出特定问题。 net 网站。
Web 部署(指向 IIS.NET 网上“Web 部署”资源的链接列表。)
Web 部署工具(TechNet 站点上“Web 部署”文档的内容节点顶级表。)
Microsoft.Web.Deployment 命名空间(自 1.0 版本后,API 文档未更新。)
以下资源是负责 Web Deploy 的团队成员的博客。
以下资源是负责 Visual Studio 部署的团队成员的博客。
一些与承载选项、网站项目部署、数据库部署、预编译和站点管理相关的教程在 ASP.NET 网站的部署教程 中。
以下资源来自 Visual Studio 实验室管理工具版博客: