Publish an ASP.NET Core app to Azure with Visual Studio Code


By Ricardo Serradas


ASP.NET Core 3.0 with Azure App Service

ASP.NET Core 3.0 has not yet been deployed to Azure App Service. We hope to provide ASP.NET Core 3 on Azure App Service soon. To host an app that uses an ASP.NET Core 3.0:

To troubleshoot an App Service deployment issue, see Troubleshoot ASP.NET Core on Azure App Service and IIS.


With this tutorial, you’ll learn how to create an ASP.Net Core MVC Application
and deploy it within Visual Studio Code.

Set up

Create an ASP.Net Core MVC project

Using a terminal, navigate to the folder you want the project to be created on
and use the following command:

dotnet new mvc

You’ll have a folder structure similar to the following:

<DIR> Controllers
<DIR> Models
<DIR> obj
<DIR> Properties
<DIR> Views
<DIR> wwwroot

Open it with Visual Studio Code

After your project is created, you can open it with Visual Studio Code
by using one of the options below:

Through the command line

Use the following command within the folder you created the project:

> code .

If the command below does not work, check if your installation is configured
properly by referencing this link.

Through Visual Studio Code interface

  • Open Visual Studio Code
  • On the menu, select File > Open Folder
  • Select the root of the folder you created the MVC Project

When you open the project folder, you’ll receive a message saying that required
assets to build and debug are missing. Accept the help to add them.

Visual Studio Code interface with project loaded

A .vscode folder will be created under the project structure. It will contain the following files:


These are utility files to help you build and debug your .NET Core Web App.

Run the app

Before we deploy the app to Azure, make sure it is running
properly on your local machine.

  • Press F5 to run the project

Your web app will start running on a new tab of your default browser. You may
notice a privacy warning as soon as it starts. This is because your app will
start either using HTTP and HTTPS, and it navigates to the HTTPS endpoint
by default.

Privacy warning while debugging the app locally

To keep the debugging session, click Advanced and then Continue to localhost (unsafe).

Generate the deployment package locally

  • Open Visual Studio Code terminal
  • Use the following command to generate a Release package to a sub folder called publish:
    • dotnet publish -c Release -o ./publish
  • A new publish folder will be created under the project structure

Publish folder structure

Publish to Azure App Service

Leveraging the Azure App Service extension for Visual Studio Code, follow the
steps below to publish the website directly to the Azure App Service.

If you’re creating a new Web App

  • Right click the publish folder and select Deploy to Web App...
  • Select the subscription you want to create the Web App
  • Select Create New Web App
  • Enter a name for the Web App

The extension will create the new Web App and will automatically start
deploying the package to it. Once the deployment is finished, click
Browse Website to validate the deployment.

Deployment succeeded message

Once you click Browse Website, you’ll navigate to it using your default browser:

New Web App successfully deployed

If you’re deploying to an existing Web App

  • Right click the publish folder and select Deploy to Web App...
  • Select the subscription the existing Web App resides
  • Select the Web App from the list
  • Visual Studio Code will ask you if you want to overwrite the
    existing content. Click Deploy to confirm

The extension will deploy the updated content to the Web App. Once it’s done,
click Browse Website to validate the deployment.

Existing Web App successfully deployed

Next steps

Additional resources



Leave a Reply

چهار × 1 =