Моделирование существующей базы данных в .NET Core 2.x - PullRequest
0 голосов
/ 16 ноября 2018

У меня есть приложение. Я пытаюсь перенести некоторые части из .NET 4.x на .NET Core. Я создал контекст в моем приложении .NET Core. Я создал контекст БД через scaffold-dbcontext. Я могу выполнить основной запрос (ура). Жизнь хороша. Теперь я хочу добавить несколько асинхронных запросов. Я получаю следующую ошибку:

System.InvalidOperationException: 'Поставщик для исходного IQueryable не реализует IDbAsyncQueryProvider. Только поставщики, которые реализуют IDbAsyncQueryProvider, могут использоваться для асинхронных операций Entity Framework. Подробнее см. http://go.microsoft.com/fwlink/?LinkId=287068.'

Код:

var ctx = new GolfGameContext();    
var userId = await (from u in ctx.AspNetUsers where u.Token == UserToken select u.Id).SingleAsync();    
return userId;

Эта ошибка кажется странной. Я создал несколько приложений .NET Core 2.x с нуля, и все, кажется, работает правильно. Я могу делать асинхронные запросы с ними просто отлично. Когда я смотрю на ссылку с ошибкой, я получаю информацию о EF 6.x. Я предполагаю, что есть нечто, что scaffold-dbcontext помещает в результирующие модели, которые вызывают эту проблему. Я также предполагаю, что код, который я создал в Core 2.x, не содержит тех же ограничений. Я на правильном пути? Нужно ли что-то менять в моем контексте / моделях, чтобы асинхронность работала правильно? Все мысли приветствуются.

ТИА,

Уолли

...