.net core xunit UseInMemoryDatabase 報 The provider for the source IQueryable doesn't implement IDbAsyncQueryProvider. 錯誤


環境:.net core 在xunit中使用 UseInMemoryDatabase 做單元測試

現象:ef core 使用異步查詢方法時報錯。

解決參考

1. https://docs.microsoft.com/zh-cn/ef/ef6/fundamentals/testing/mocking?redirectedfrom=MSDN#limitations-of-ef-in-memory-test-doubles

2.其實是不支持異步方法引起的,可以改成同步查詢,然后用 Task.FromResult 返回結果。

最終解決方式:

我原來異步方法是來自命名空間 System.Linq.Data,改成Microsoft.EntityFrameworkCore后解決


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM