Debugging a Topshelf Shelf
Topshelf shelves are not the funnest thing to debug.
But should you need to here are my steps to doing so.
1. Change the project debug properties to to run Topshelf.Host.exe
2. Have your build output copy your output to “<topshelf.host>/services/<shelfname>/ that should put all of your dlls in that folder.
3. Your config file will need to be named <shelfname>.config
So if you had a project named ‘bob’ and Topshelf.Host.exe was in your lib folder under topshelf. you would change your build output to ~/lib/topshelf/services/bob and then change the app.config to bob.config. Then when you hit F5 you should be good to go.
Another hacky route is to just add a Debugger.Break(); command in your start method.