Вы задали несколько вопросов. Я постараюсь ответить на них все и уточнить несколько вопросов.
Я понимаю, что асинхронность на самом деле не нужна
Асинхронизация никогда не бывает на самом делеНеобходим вопрос в том, принесет ли асинхронную пользу ваше приложение.Например, когда выполняется вызов в DbContext, существуют некоторые сетевые операции, которые требуют времени. Если вы не используете асинхронную передачу в течение этого времени, поток будет ожидать ответа, а не возвращаться в пул потоков для обработки других запросов.
Так что да, это не нужно, но может быть полезно.
В этом контексте, когда запрос материализуется?
Запросматериализованный (в промежуточном программном обеспечении) при доступе к конечной точке,
Это делается асинхронно?
Нет, когда вы передаете Queryable, вы просто откладываетедо тех пор, пока это не будет выполнено до сих пор, это все еще выполняется синхронно, вам нужно использовать шаблон async / await, чтобы делать что-то асинхронно