Web Deployment Content Map for Visual Studio and ASP.NET

This topic provides links to documentation resources about how to deploy (publish) ASP.NET web applications to IIS by using any of the following versions of Visual Studio:

Some of the Visual Studio deployment tools work only with web application projects, while others work only with web site projects. All MVC projects are web application projects. For information about the difference between web application projects and web site projects, see Web Application Projects versus Web Site Projects in Visual Studio.

This topic contains the following sections:

  • Deployment for Web Application Projects (Including MVC and WebAPI)

  • Deployment for Web Site Projects

  • Other Resources for Information About ASP.NET Deployment

Deployment for Web Application Projects (Including MVC and WebAPI)

Observação

New deployment features were introduced in Visual Studio 2012, and they can be enabled in Visual Studio 2010 by installing the Visual Studio Web Publish Update. MSDN documentation for Visual Studio 2012 covers the new functionality, but unless otherwise noted, resources in external web sites document deployment features that were originally delivered with Visual Studio 2010.

Scenario

Topics

Understanding deployment options for web application projects

Web Application Project Deployment Overview for Visual Studio and ASP.NET

Visual Studio 2012 Web Publishing Improvements (ASP.NET site video, by Scott Hanselman)

Overview Post for Web Deployment in VS 2010 (Vishal Joshi's blog. Many of the Visual Studio 2010 resources it links to have information that is still relevant for Visual Studio 2012.)

Finding hosting providers for an ASP.NET application

ASP.NET Hosting

Deploying a web application from Visual Studio

How to: Deploy a Web Application Project Using One-Click Publish in Visual Studio

Deployment to a Hosting Provider (ASP.NET web site. A 12-part tutorial series with detailed instructions for a deployment scenario that includes multiple SQL Server Compact databases and covers migration to SQL Server.)

Deploying an ASP.NET Web Application to a Windows Azure Web Site and SQL Database (windowsazure.com site)

Deploying an ASP.NET Web Application to a Windows Azure Cloud Service and SQL Database (windowsazure.com site)

Hosting an ASP.NET Web Forms Application on Windows Azure

Hosting an ASP.NET MVC Application on Windows Azure

Deploying a web application by creating and installing a web deployment package

How to: Create a Web Deployment Package in Visual Studio (How to create a deployment package from the Visual Studio IDE.)

How to: Install a Deployment Package Using the deploy.cmd File Created by Visual Studio

Using a Web Deploy package to deploy to IIS on the dev box and to a third party host (Sayed Hashimi's blog. How to use IIS Manager to install a deployment package in IIS on the local computer and at a hosting company that supports IIS Manager for Remote Administration.)

Building a Web Deploy Package From Visual Studio 2010 (IIS.NET web site. Includes instructions for command-line package creation and installation.)

Package Once Publish Anywhere (Sayed Hashimi's blog. Introduces a NuGet package that automates the process of transforming the Web.config file for multiple destination environments.)

See also the following scenario.

Deploying a web application in an enterprise environment, using a continuous integration (CI) process

Deploying Web Applications in Enterprise Scenarios (ASP.NET Site. A series of 40 tutorials that explain how to automate deployment in a CI process using Visual Studio 2010 and Team Foundation Server 2010).

Inside the Microsoft Build Engine: Using MSBuild and Team Foundation Build, by Sayed Hashimi and William Bartholomew (Microsoft site. This is a book, not a web resource, but it is an essential guide for learning how to configure MSBuild for continuous integration scenarios.)

MSBuild Extension Pack (CodePlex site. Includes deployment tasks.)

Team Foundation Build Customization Guide (CodePlex Site. Documentation by ALM Rangers on setting up Team Foundation Server covers web deployment and includes tutorials and videos.)

Continuous Delivery for Cloud Applications in Windows Azure (windowsazure.com site)

Announcing Continuous Deployment to Azure with Team Foundation Service (Brian Harry's blog)

SlowCheetah XML transforms from a CI server (Sayed Hashimi's blog. Explains how to use SlowCheetah, A Visual Studio add-in for transforming app.config and other XML files.)

How to take your app offline during publishing (Sayed Hashimi's blog. Shows how to automate the process of taking an application offline. See also the scenario Making sure an application is off-line during deployment.)

Using Web.config transformations to change settings in the destination Web.config file or app.config file during deployment

Web.config File Transformations (ASP.NET site)

Web.config Transformation Syntax for Web Application Project Deployment Using Visual Studio

Profile specific web.config transforms and transform preview (Sayed Hashimi's blog. Demonstrates the Web.config transformation preview feature.)

See also How do I disable Web.config transformation? and When should I use Web Deploy parameters instead of Web.config transformations? in Web Application Project Deployment FAQ for Visual Studio and ASP.NET.

Using Web Deploy parameters to change settings in the destination web application during deployment

How to: Use Web Deploy Parameters in a Web Deployment Package

Web Deploy Parameterization (IIS.NET web site)

Web Deploy Parameterization in Action (Vishal Joshi's blog)

Web Deploy Parameterization vs. Web.config Transformation (Vishal Joshi's blog)

Making sure an application is off-line during deployment

Deployment to a Hosting Provider: Deploying a Code-Only Update (ASP.NET site. See the section Preventing User Access to the Production Site During Update)

Taking an Application Offline before Publishing (IIS.net site. Explains a feature built into Web Deploy 3.0 that automates handling of an app_offline.html file.)

Deploying a database or changes to a database as part of web application deployment

Configuring Database Deployment in Visual Studio

How to: Deploy a Web Application Project Using One-Click Publish in Visual Studio

Deployment to a Hosting Provider (ASP.NET web site. A 12-part tutorial series with detailed instructions for a deployment scenario that includes multiple SQL Server Compact databases and covers migration to SQL Server.)

See also the Deploying a web application by creating and installing a web deployment package and Deploying a web application in an enterprise environment, using a continuous integration (CI) process scenarios.

Deploying a database separately from web application deployment

SQL Server Data Tools

Including Data in a SQL Server Database Project (SQL Server Data Tools team blog. How to deploy both schema and data when deploying a database.)

Migrating a Database to SQL Azure using SSDT (SQL Server Data Tools team blog)

Deploying a web application that uses ASP.NET application services such as membership and profiling

Configuring a Website that Uses Application Services (ASP.NET web site. This tutorial is for web site projects but contains information that is useful also for web application projects.)

Users and Roles On The Production Website (ASP.NET web site. This tutorial is for web site projects but contains information that is useful also for web application projects.)

Precompiling for deployment

ASP.NET Web Application Project Precompilation Overview

Package/Publish Web Tab, Project Properties

Advanced Precompile Settings Dialog Box

Deploying an intranet web application

How to Create an Intranet Site Using ASP.NET MVC

Automating common deployment tasks that are not automated out of the box

Setting Folder Permissions on Web Publish (Sayed Hashimi's blog)

How to extend the targets file to include registry settings for a web project package (Web Development Tools blog)

Extending XML (Web.config) transformation (Sayed Hashimi's blog. Shows how to create custom XDT transforms.)

Web Deployment Tool (MSDeploy) Custom Provider Take 1 (Sayed Hashimi's blog. Shows how to create a Web Deploy custom provider.)

How to package and deploy COM components(Web Development Tools blog)

How to package .NET assemblies (Web Development Tools blog. How to deploy assemblies to the GAC.)

Configuring web servers so that developers can deploy web applications to them using Web Deploy

Installing and Configuring Web Deploy for Administrator and non-administrator Deployments

Configuring servers for a hosting provider

Microsoft ASP.NET 4 Hosting Deployment Guide (Microsoft Download Center)

Generate a Profile XML File (IIS.net web site)

Troubleshooting deployment problems

Deployment to a Hosting Provider: Troubleshooting (ASP.NET web site)

Troubleshooting Common Problems With Web Deploy (IIS.NET web site)

Web Deploy Error Codes

Web Application Project Deployment FAQ for Visual Studio and ASP.NET

Core Differences Between IIS and the ASP.NET Development Server (ASP.NET web site)

Common Configuration Differences Between Development and Production (ASP.NET web site)

Hosting ASP.NET Applications in Medium Trust (4 Guys from Rolla site)

Getting help with a specific deployment question

ASP.NET Configuration and Deployment forum (ASP.NET site. A forum for questions related to ASP.NET deployment.)

Deployment for Web Site Projects

For information about the distinction between web site projects and web application projects, see Web Application Projects versus Web Site Projects in Visual Studio.

Scenario

Topics

Understanding deployment options for web site projects

Plans regarding Website projects and Web Deployment Projects (Sayed Hashimi's blog. Explains why Web Deployment Projects are not supported in Visual Studio 2012, and describes plans for future enhancements to web site project deployment features.

ASP.NET Web Site Projects Deployment Overview (Visual Studio 2010 documentation on MSDN. Deployment tools for web site projects have not changed in Visual Studio 2012. See also related how-to and walkthrough topics listed under this topic in the MSDN table of contents.

Deploying a web site by using the Copy Web Site tool

Deploying Your Site Using Visual Studio (ASP.NET web site)

Deploying a web site by using the Windows XCopy command

Determining What Files Need to Be Deployed (ASP.NET web site)

Deploying Your Site Using an FTP Client (ASP.NET web site)

Deploying a precompiled web site

Deploying Your Site Using Visual Studio (ASP.NET web site)

Precompiling Your Website (ASP.NET web site)

Deploying a web site that uses ASP.NET application services such as membership and profiling

Configuring a Website that Uses Application Services (ASP.NET web site)

Users and Roles On The Production Website (ASP.NET web site)

Deploying a database or changes to a database when you deploy a web site

Deploying a Database (ASP.NET web site)

Configuring the Production Web Application to Use the Production Database

Strategies for Database Development and Deployment (ASP.NET web site)

Troubleshooting deployment problems

Core Differences Between IIS and the ASP.NET Development Server (ASP.NET web site)

Common Configuration Differences Between Development and Production (ASP.NET web site)

Hosting ASP.NET Applications in Medium Trust (4 Guys from Rolla site)

Getting help with a specific deployment question

ASP.NET Configuration and Deployment forum (ASP.NET site. A forum for asking questions related to ASP.NET deployment.)

Additional Resources for Information About ASP.NET Deployment

This section provides links to additional resources that are useful for learning more about how to use Visual Studio and IIS deployment tools.

The following resources provide documentation about Web Deploy, the IIS framework that Visual Studio uses to perform web application project deployment tasks. You can ask specific questions about Web Deploy in the Web Deployment Tool forum on the IIS.net web site.

The following resources are blogs by members of the team that is responsible for Web Deploy.

The following resources are blogs by members of the team that is responsible for Visual Studio deployment.

A number of tutorials that relate to hosting options, web site project deployment, database deployment, precompilation, and site administration are on the Deployment Tutorials page on the ASP.NET web site.

The following resources are from the Visual Studio Lab Management blog: