It's code "purity" over usability. It's putting the core dev team's principles over their customers actual need, completely violating KISS, DRY and YAGNI.
DI really is our generation's factories. I'm already seeing projects written by people who don't understand it making utter nightmare spagetti code, worse than any code I've ever seen.
It's nasty scaffolding code which is a symptom of limitations of the language, definitely not code anyone should ever actually be wasting time writing.
Instead of recognising it's a flash in the pan, the core team have embraced it and are trying to force it down everyone's necks, and a lot programmers simply don't get it and are making an utter mess instead.
Then maybe those programmers should go back to JS ES5?
I'm more of an outsider now, as I've been doing far more node/js dev lately than .Net ...
Edit: Debugging works now for me, after the .NET Core Debugger was automatically installed in the background!