Search code examples
visual-studioiis-expressidentityserver4

What is the difference between IISExpress or MyAPI in the VS2017 Run combo?


I am working through the IdentityServer4 Sample applications I see 2 options in the Run combo They both seem to have the same effect when I select them and run. What is the difference?

enter image description here

Here is launchSettings.json

  {
  "iisSettings": {
    "windowsAuthentication": false,
    "anonymousAuthentication": true,
    "iisExpress": {
      "applicationUrl": "http://localhost:5000/",
      "sslPort": 0
    }
  },
  "profiles": {
    "IIS Express": {
      "commandName": "IISExpress",
      "launchBrowser": true,
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    },
    "QuickstartIdentityServer": {
      "commandName": "Project",
      "launchBrowser": true,
      "launchUrl": "http://localhost:5000",
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      },
      "applicationUrl": "http://localhost:5000/"
    }
  }
}

Solution

  • The options simply map to the corresponding "profiles" in launchSettings.json.

    "IIS Express" uses IIS Express as reverse proxy to run your web app upon Kestrel, while the latter runs your web app directly upon Kestrel.

    More details can be found in,

    https://blog.lextudio.com/what-should-you-check-when-visual-studio-cannot-debug-asp-net-core-projects-4b5db8c5e129