Не совсем понял почему использование AspNet.Core или DI хоть как-то умаляет возможности F#, если честно. Понятное дело, что это личное предпочтение, но мне очень заходит система с DI. А фаршик из-за этого не теряет своих свойств: сжатый, лаконичный код; богатый инструментарий для моделирования доменной модели; удобные, короткие объявления классов; прекрасный функциональный тип прямо из коробки, встроенная иммутабельность и так далее. При этом я не вижу проблем для каких-то особых не идиоматичных вещей просто взять и написать их на C#.