DbSet не имеет асин c метод для удаления диапазона? - PullRequest
1 голос
/ 11 февраля 2020

Я не могу найти asyn c версию RemoveRange. Но он существует для примера для AddRange. Кто-нибудь знает, почему это? Мне кажется странным не иметь однородный набор команд.

1 Ответ

0 голосов
/ 12 февраля 2020

Поскольку это синхронная операция и она предоставляет ложный метод Async, который выполняется синхронно и возвращает выполненную задачу, вводит в заблуждение и противоречит принципам метода asyn c.

EF Core предоставляет асинхронные c версии только для методы, которые потенциально обращаются к базе данных - например, Add{Range}, Find, SaveChanges, Dispose и syn c только версия для методов, которые работают исключительно в состоянии (отслеживание изменений), таких как Attach{Range}, Update{Range}, Remove{Range}.

Начиная с версии Add{Range} asyn c версия объясняется в документации :

Этот метод является асин c только для того, чтобы разрешить генераторам специальных значений, например, используемому Microsoft.EntityFrameworkCore.Metadata.SqlServerValueGenerationStrategy.SequenceHiLo, асинхронный доступ к базе данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...