2016-10-29 01:35:15 +08:00
---
2016-11-17 08:24:57 +08:00
title: Deploy an ASP.NET Core web app to Azure using Visual Studio | Microsoft Docs
2016-10-29 01:35:15 +08:00
author: rick-anderson
2016-11-18 04:13:02 +08:00
description:
keywords: ASP.NET Core,
2016-10-29 01:35:15 +08:00
ms.author: riande
manager: wpickett
ms.date: 10/14/2016
ms.topic: article
ms.assetid: 78571e4a-a143-452d-9cf2-0860f85972e6
2016-11-17 08:24:57 +08:00
ms.technology: aspnet
2016-10-29 01:35:15 +08:00
ms.prod: aspnet-core
uid: tutorials/publish-to-azure-webapp-using-vs
---
# Deploy an ASP.NET Core web app to Azure using Visual Studio
By [Rick Anderson ](https://twitter.com/RickAndMSFT ), [Cesar Blum Silveira ](https://github.com/cesarbs )
## Set up the development environment
* Install the latest [Azure SDK for Visual Studio ](https://www.visualstudio.com/features/azure-tools-vs ). The SDK installs Visual Studio if you don't already have it.
> [!NOTE]
> The SDK installation can take more than 30 minutes if your machine doesn't have many of the dependencies.
* Install [.NET Core + Visual Studio tooling ](http://go.microsoft.com/fwlink/?LinkID=798306 )
* Verify your [Azure account ](https://portal.azure.com/ ). You can [open a free Azure account ](https://azure.microsoft.com/pricing/free-trial/ ) or [Activate Visual Studio subscriber benefits ](https://azure.microsoft.com/pricing/member-offers/msdn-benefits-details/ ).
## Create a web app
In the Visual Studio Start Page, tap **New Project...** .
![image ](publish-to-azure-webapp-using-vs/_static/new_project.png )
Alternatively, you can use the menus to create a new project. Tap **File > New > Project...** .
![image ](publish-to-azure-webapp-using-vs/_static/alt_new_project.png )
Complete the **New Project** dialog:
* In the left pane, tap **Web**
* In the center pane, tap **ASP.NET Core Web Application (.NET Core)**
* Tap **OK**
![image ](publish-to-azure-webapp-using-vs/_static/new_prj.png )
In the **New ASP.NET Core Web Application (.NET Core)** dialog:
* Tap **Web Application**
* Verify **Authentication** is set to **Individual User Accounts**
* Verify **Host in the cloud** is **not** checked
* Tap **OK**
![image ](publish-to-azure-webapp-using-vs/_static/noath.png )
## Test the app locally
* Press **Ctrl-F5** to run the app locally
* Tap the **About** and **Contact** links. Depending on the size of your device, you might need to tap the navigation icon to show the links
![image ](publish-to-azure-webapp-using-vs/_static/show.png )
* Tap **Register** and register a new user. You can use a fictitious email address. When you submit, you'll get the following error:
![image ](publish-to-azure-webapp-using-vs/_static/mig.png )
You can fix the problem in two different ways:
* Tap **Apply Migrations** and, once the page updates, refresh the page; or
* Run the following from the command line in the project's directory:
<!-- literal_block {"ids": [], "xml:space": "preserve"} -->
````
dotnet ef database update
````
The app displays the email used to register the new user and a **Log off** link.
![image ](publish-to-azure-webapp-using-vs/_static/hello.png )
## Deploy the app to Azure
Right-click on the project in Solution Explorer and select **Publish...** .
![image ](publish-to-azure-webapp-using-vs/_static/pub.png )
In the **Publish** dialog, tap **Microsoft Azure App Service** .
![image ](publish-to-azure-webapp-using-vs/_static/maas1.png )
Tap **New...** to create a new resource group. Creating a new resource group will make it easier to delete all the Azure resources you create in this tutorial.
![image ](publish-to-azure-webapp-using-vs/_static/newrg1.png )
Create a new resource group and app service plan:
* Tap **New...** for the resource group and enter a name for the new resource group
* Tap **New...** for the app service plan and select a location near you. You can keep the default generated name
* Tap **Explore additional Azure services** to create a new database
![image ](publish-to-azure-webapp-using-vs/_static/cas.png )
* Tap the green ** +** icon to create a new SQL Database
![image ](publish-to-azure-webapp-using-vs/_static/sql.png )
* Tap **New...** on the **Configure SQL Database** dialog to create a new database server.
![image ](publish-to-azure-webapp-using-vs/_static/conf.png )
* Enter an administrator user name and password, and then tap **OK** . Don't forget the user name and password you create in this step. You can keep the default **Server Name**
![image ](publish-to-azure-webapp-using-vs/_static/conf_servername.png )
> [!NOTE]
> "admin" is not allowed as the administrator user name.
* Tap **OK** on the **Configure SQL Database** dialog
![image ](publish-to-azure-webapp-using-vs/_static/conf_final.png )
* Tap **Create** on the **Create App Service** dialog
![image ](publish-to-azure-webapp-using-vs/_static/create_as.png )
* Tap **Next** in the **Publish** dialog
![image ](publish-to-azure-webapp-using-vs/_static/pubc.png )
* On the **Settings** stage of the **Publish** dialog:
* Expand **Databases** and check **Use this connection string at runtime**
* Expand **Entity Framework Migrations** and check **Apply this migration on publish**
* Tap **Publish** and wait until Visual Studio finishes publishing your app
![image ](publish-to-azure-webapp-using-vs/_static/pubs.png )
Visual Studio will publish your app to Azure and launch the cloud app in your browser.
### Test your app in Azure
* Test the **About** and **Contact** links
* Register a new user
![image ](publish-to-azure-webapp-using-vs/_static/final.png )
### Update the app
* Edit the `Views/Home/About.cshtml` Razor view file and change its contents. For example:
<!-- literal_block {"ids": [], "linenos": false, "xml:space": "preserve", "language": "html", "highlight_args": {"hl_lines": [7]}} -->
````html
@{
ViewData["Title"] = "About";
}
< h2 > @ViewData["Title"].< / h2 >
< h3 > @ViewData["Message"]< / h3 >
< p > My updated about page.< / p >
````
* Right-click on the project and tap **Publish...** again
![image ](publish-to-azure-webapp-using-vs/_static/pub.png )
* After the app is published, verify the changes you made are available on Azure
### Clean up
When you have finished testing the app, go to the [Azure portal ](https://portal.azure.com/ ) and delete the app.
* Select **Resource groups** , then tap the resource group you created
![image ](publish-to-azure-webapp-using-vs/_static/portalrg.png )
* In the **Resource group** blade, tap **Delete**
![image ](publish-to-azure-webapp-using-vs/_static/rgd.png )
* Enter the name of the resource group and tap **Delete** . Your app and all other resources created in this tutorial are now deleted from Azure
### Next steps
* [Getting started with ASP.NET Core MVC and Visual Studio ](first-mvc-app/start-mvc.md )
2016-11-04 06:32:27 +08:00
* [Introduction to ASP.NET Core ](../index.md )
2016-10-29 01:35:15 +08:00
* [Fundamentals ](../fundamentals/index.md )