In .NET, launch settings (launchSettings.json) allow us to share run commands across all development environments, regardless of IDE and editor choices. For the most part, launch commands are cross-platform capable, so they aren’t limited to any operating system, which is excellent for teams that let developers make their own choices for tools and development environments. One of the recent tools in .NET, dotnet-watch, allows developers to speed up their development workflow by providing a more responsive feedback loop from the time a developer makes an edit in code to the time the app reflects it in the output.

In this short but helpful post, you’ll find a simple launch settings configuration to add dotnet-watch as a profile to your project’s existing launchSettings.json file.

Launch Setting Profile For dotnet-watch

The .NET SDK bundles the dotnet-watch tool, which you can find in the SDK installation directory under the SDK version directory in a folder named DotnetTools. Other tools include dotnet-dev-certs, dotnet-format, dotnet-user-secrets. **Note, to get the following launch profile to work, you'll need the dotnet executable in your PATH`.**

First, locate the launchSettings.json in your project. You can typically find the file under the Properties folder. Then under the profiles section, add the following element.

"Watch": {
  "commandName": "Executable",
  "executablePath": "dotnet",
  "workingDirectory": "$(ProjectDir)",
  "hotReloadEnabled": true,
  "hotReloadProfile" : "aspnetcore",
  "commandLineArgs": "watch run",
  "launchBrowser": true,
  "environmentVariables": {
    "ASPNETCORE_ENVIRONMENT": "Development"
  }
}

You should now see Watch as a launch command in your favorite IDE and editor.

JetBrains Rider run configuration for watch launch settings profile You can also adapt this launch profile to work with desktop application development, but I haven’t tried it myself.

Now you should be able to start a quick feedback loop experience with a click of a button. Enjoy, and thanks for reading. If you found this post helpful, please share it with friends and coworkers.