Deploy an ASP.NET Core web app to Azure using Visual Studio ============================================================ By `Rick Anderson`_ .. contents:: Sections: :local: :depth: 1 Set up the development environment ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - `Install the latest Azure SDK for Visual Studio 2015 `__. The SDK installs Visual Studio 2015 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 `__ - Verify your `Azure account `__. You can `open a free Azure account `__ or `Activate Visual Studio subscriber benefits `__. Create a web app ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ From the Visual Studio **Start** page, tap **New Project**. .. image:: first-mvc-app/start-mvc/_static/new_project.png Alternatively, you can use the menus to create a new project. Tap **File > New > Project**. .. image:: first-mvc-app/start-mvc/_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 ^^^^^^^^^^^^^^^^^^^^^ - Use **Ctl-F5** to run the app - Tap the **About** and **Contact** links. Depending on the size of your device, you might need to click 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. When you submit, you'll get the following error: .. image:: publish-to-azure-webapp-using-vs/_static/mig.png You can fix the problem two different ways: - Tap **Apply Migrations** and when the page updates, refresh the screen - Run the following from the command line in the project directory:: dotnet ef database update The app displays the email registration used to register 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 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 enter a new resource group. Creating a new resource group will make it easy 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 .. image:: publish-to-azure-webapp-using-vs/_static/conf.png - You can keep the default **Server Name** - Enter an administrator user name and password, and then tap **OK**. Remember the user name and password. .. image:: publish-to-azure-webapp-using-vs/_static/dbrick.png - Tap **OK** on the **Configure SQL Database** dialog - 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: - Check **Use this connection string at runtime** - Check **Apply this migration on publish** .. image:: publish-to-azure-webapp-using-vs/_static/pubs.png - Tap **Publish** 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. Change the content, for example: .. code-block:: html :emphasize-lines: 7 @{ ViewData["Title"] = "About"; }

@ViewData["Title"].

@ViewData["Message"]

My updated about page.

- Right click on the project and select **Publish** .. image:: publish-to-azure-webapp-using-vs/_static/pub.png - Tap **Publish** and verify the changes you made are displayed on Azure Clean up -------------- When you have finished testing the app, log into the `Azure portal `__ and delete the app. - Log into the `Azure portal `__ - In the left blade tap **Resource groups** and then tap the resource group you created .. image:: publish-to-azure-webapp-using-vs/_static/portalrg.png - In the **Resource group** blade tap **Delete** - Enter the name of the resource group and tap **Delete** .. image:: publish-to-azure-webapp-using-vs/_static/rgd.png Next steps ----------- - :doc:`/tutorials/first-mvc-app/start-mvc` - :doc:`/intro` - :doc:`/fundamentals/index`