I have a Web API 2.2 application and want to filter data based on the current user that is accessing the Web API. The User property on the ApiController has the information that I need. But how can I get that information to my service class? Of course I don't want to pass everything around via parameters, but via my DI.
You want to pass your principal into the methods of the service class, not as a constructor parameter. Depending on how you are using DI, that service class can hang around for a while, and you don't want the class to have the principal in that case. You want your principal to be short lived.