【发布时间】:2016-12-23 17:19:31
【问题描述】:
我在 ASP.NET MVC Core 和 Entity Framework 中有以下代码,当我执行 ToListAsync 时出现以下错误。
附加信息:源 IQueryable 未实现 IDbAsyncEnumerable。仅来源 实现 IDbAsyncEnumerable 可用于实体框架 异步操作。有关更多详细信息,请参阅 http://go.microsoft.com/fwlink/?LinkId=287068.
这是我的代码:
var states = mDbContext.State.ToListAsync();
var countries = mDbContext.Country.ToListAsync();
mMemoryCache.Set(Countries, await countries,
new MemoryCacheEntryOptions().SetAbsoluteExpiration(TimeSpan.MaxValue));
mMemoryCache.Set(States, await states,
new MemoryCacheEntryOptions().SetAbsoluteExpiration(TimeSpan.MaxValue));
我的上下文类从 DbContext 扩展而来,我使用的是 EF 6。
public virtual DbSet<Country> Country { get; set; }
public virtual DbSet<State> State { get; set; }
知道为什么即使我已经安装了所有东西,我也无法执行ToListAsync()?
【问题讨论】:
-
你的代码真的是
public virtual DbSet State { get; set; }吗? -
是的,在继承自 DbContext 的上下文类中。
-
您使用的是哪个数据库?也许是 MySQL?
-
不,MS SQL 服务器
-
1) 您在 project.json 中使用的是哪个 .net 框架? 2) 你是否在你的控制器/类中添加了
System.Data.Entity;?
标签: c# asp.net-mvc entity-framework asp.net-core-mvc