16
votes

When I press run button in Rider (net core) it run the following command:

/usr/local/share/dotnet/dotnet /pathtomyproject/myproject.dll

But I need to run the project with the argument "watch", if I write this command in Rider Edit Configurations's arguments I got error:

Unhandled Exception: System.FormatException: Unrecognized argument format: 'watch'.

I know to run with watch tool is dotnet watch run, and I know too that I can run that command in the terminal.

My question is if I can configure Rider to run this way when I press Run button? or... maybe Rider has an Edit and Continue feature that I don't know?

2

2 Answers

22
votes

There is an answer on Rider forum: https://rider-support.jetbrains.com/hc/en-us/community/posts/360001346139-Simpler-integration-for-Microsoft-DotNet-Watcher-Tools

In short:

  1. Open Run Configurations dialog
  2. Add new "Before launch" configuration
  3. Select "External tool"
  4. Fill in "Tool settings" section (see the link above)

Edit

The external tool settings should be:

  • Program: c:\program files\dotnet\dotnet.exe
  • Arguments: watch run
  • Working directory: <path to your project folder>
5
votes

You can use the "Native Executable" option as a run configuration to make this happen. To do so:

  1. Select Run -> Edit Configuration from the menu options

  2. Click the + icon and select the "Native Executable" option from the list.

  3. In the options that are displayed, provide the following...

    • Name: Watch (or whatever you prefer)
    • Exe path: /usr/local/share/dotnet/dotnet
    • Program Arguments: watch run
    • Working directory: [path to your project where .csproj file resides]
  4. Click "OK" to apply/save the changes.

  5. When ready, select Run -> Run... from the menu options. Select the "Watch" option.

You should see the terminal results build/run the app. If you change your controller file, you'll see the file change detected and the app rebuild.