я не могу его передать в сервисный класс.
Можешь. Если у тебя нужный класс находится в другой сборке, то добавь в csproj такую строчку:
<ItemGroup>
<FrameworkReference Include="Microsoft.AspNetCore.App" />
</ItemGroup>
Так же я не могу понять, как его правильно зарегистрировать в Program.cs, что бы внедрить его в конвейер DI
Он и так по-умолчанию добавляется в ServiceCollection - можешь убедиться в этом, запустив в дебаге и просмотрев содержимое.
Проблема заключается в том, что мне нужно получить путь к статической папке
Тк эта папка не меняется в рантайме - я бы её доставал ещё на этапе конфигурирования, и не привязывался к IWebHostEnvironment