burnt1ce
burnt1ce

Reputation: 14877

ASP.NET Core launch settings: IIS Express, IIS, Project, Executable

My Google skills are lacking at the moment. When should I be using IIS Express vs. IIS vs. Project vs. Executable? What are the pros/cons of each?

Launch settings

Upvotes: 25

Views: 13905

Answers (1)

poke
poke

Reputation: 387507

  • IIS Express: A common default that runs the ASP.NET Core application behind the IIS Express development server. This is a good default.
  • IIS: When you actually have a full IIS installed, you can set this up, so that your application runs directly behind IIS. That isn’t really a good choice for development, at least not for ASP.NET Core, and I actually don’t even know if this works properly with ASP.NET Core.
  • Project: This runs the application as a console application. As a result, this is the same as running dotnet run from the command line. This is also a very good option for debugging, as you can directly see the logging output. Depending on your target production environment, this might even make more sense than running behind IIS Express.
  • Executable: This allows you to run an arbitrary executable. That’s not really useful for running your ASP.NET Core project.

So basically it comes down to IIS Express or Project. These are the two that are also configured properly by default in the launchSettings.json file that comes with the ASP.NET Core application template.

Whether you prefer IIS Express or running the application directly probably comes down to personal preference. So just give both a try and see what feels nicer to you.

Upvotes: 29

Related Questions