AspNetCore.Docs/aspnetcore/host-and-deploy/iis/development-time-iis-suppor...

4.0 KiB

title author description ms.author manager ms.custom ms.date ms.topic ms.technology ms.prod uid
Development-time IIS support in Visual Studio for ASP.NET Core shirhatti Discover support for debugging ASP.NET Core applications when running behind IIS on Windows Server. riande wpickett mvc 09/13/2017 article aspnet asp.net-core host-and-deploy/iis/development-time-iis-support

Development-time IIS support in Visual Studio for ASP.NET Core

By: Sourabh Shirhatti

This article describes Visual Studio support for debugging ASP.NET Core applications running behind IIS on Windows Server. This topic walks through enabling this feature and setting up a project.

Prerequisites

  • Visual Studio (2017/version 15.3 or later)
  • ASP.NET and web development workload OR the .NET Core cross-platform development workload

Enable IIS

Enable IIS. Navigate to Control Panel > Programs > Programs and Features > Turn Windows features on or off (left side of the screen). Select the Internet Information Services checkbox.

Windows Features showing Internet Information Services checkbox checked as a black square (not a checkmark) indicating that some of the IIS features are enabled

If the IIS installation requires a reboot, reboot the system.

Enable development-time IIS support

Once IIS is installed, launch the Visual Studio installer to modify the existing Visual Studio installation. In the installer, select the Development time IIS support component. The component is listed as an optional component in the Summary panel for the ASP.NET and web development workload. This installs the ASP.NET Core Module, which is a native IIS module required to run ASP.NET Core applications.

Modifying Visual Studio features: The Workloads tab is selected. In the Web and Cloud section, the ASP.NET and web development panel is selected. On the right in the Optional area of the Summary panel, there is a checkbox for Development time IIS support.

Configure the project

Create a new launch profile to add development-time IIS support. In Visual Studio's Solution Explorer, right-click the project and select Properties. Select the Debug tab. Select IIS from the Launch dropdown. Confirm that the Launch browser feature is enabled with the correct URL.

Project properties window with the Debug tab selected. The Profile and Launch settings are set to IIS. The Launch browser feature is enabled with an address of http://localhost/WebApplication2. The same address is also provided in the App URL field of the Web Server Settings area with Enable Anonymous Authentication enabled.

Alternatively, manually add a launch profile to the launchSettings.json file in the app:

{
    "iisSettings": {
        "windowsAuthentication": false,
        "anonymousAuthentication": true,
        "iis": {
            "applicationUrl": "http://localhost/WebApplication2",
            "sslPort": 0
        }
    },
    "profiles": {
        "IIS": {
            "commandName": "IIS",
            "launchBrowser": "true",
            "launchUrl": "http://localhost/WebApplication2",
            "environmentVariables": {
                "ASPNETCORE_ENVIRONMENT": "Development"
            }
        }
    }
}

Visual Studio may prompt a restart if not running as an administrator. If prompted, restart Visual Studio.

Congratulations! At this point, the project is configured for development-time IIS support.

Additional resources