Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 带有DbSet的LINQ ToListAsync表达式_C#_Linq_Async Await_Entity Framework 6_Ienumerable - Fatal编程技术网

C# 带有DbSet的LINQ ToListAsync表达式

C# 带有DbSet的LINQ ToListAsync表达式,c#,linq,async-await,entity-framework-6,ienumerable,C#,Linq,Async Await,Entity Framework 6,Ienumerable,我已经编写了一个C#MVC5互联网应用程序,并且对如何使用.ToListAsyncLINQ表达式有疑问 以下是我在索引操作结果中使用的代码: IEnumerable<IMapLocationItem> mapLocationImageGalleries = await db.mapLocationImageGalleries.Where(m => m.userName.Equals(userName)).ToListAsync(); IEnumerable<IMapLoc

我已经编写了一个C#MVC5互联网应用程序,并且对如何使用
.ToListAsync
LINQ表达式有疑问

以下是我在索引操作结果中使用的代码:

IEnumerable<IMapLocationItem> mapLocationImageGalleries = await db.mapLocationImageGalleries.Where(m => m.userName.Equals(userName)).ToListAsync();
IEnumerable<IMapLocationItem> mapLocationVideoGalleries = await db.mapLocationVideoGalleries.Where(m => m.userName.Equals(userName)).ToListAsync();
IEnumerable<IMapLocationItem> mapLocationItemsCombined = mapLocationImageGalleries.Concat(mapLocationVideoGalleries);
IEnumerable mapLocationImageGalleries=wait db.mapLocationImageGalleries.Where(m=>m.userName.Equals(userName)).toListSync();
IEnumerable mapLocationVideoGalleries=等待db.mapLocationVideoGalleries.Where(m=>m.userName.Equals(userName)).ToListSync();
IEnumerable mapLocationItemsCombined=mapLocationImageGalleries.Concat(mapLocationVideoGalleries);
我想为上面的代码创建一个服务函数。以下是我编写的代码:

public async Task<IEnumerable<IMapLocationItem>> GetAllMapLocationItemsFromUserName(string userName)
{
    IEnumerable<IMapLocationItem> mapLocationImageGalleries = await db.mapLocationImageGalleries.Where(m => m.userName.Equals(userName)).ToListAsync();
    IEnumerable<IMapLocationItem> mapLocationVideoGalleries = await db.mapLocationVideoGalleries.Where(m => m.userName.Equals(userName)).ToListAsync();
    IEnumerable<IMapLocationItem> mapLocationItemsCombined = mapLocationImageGalleries.Concat(mapLocationVideoGalleries);
    return mapLocationItemsCombined;
}
公共异步任务GetAllMapLocationItemsFromUserName(字符串用户名)
{
IEnumerable mapLocationImageGalleries=等待db.mapLocationImageGalleries.Where(m=>m.userName.Equals(userName)).ToListSync();
IEnumerable mapLocationVideoGalleries=等待db.mapLocationVideoGalleries.Where(m=>m.userName.Equals(userName)).ToListSync();
IEnumerable mapLocationItemsCombined=mapLocationImageGalleries.Concat(mapLocationVideoGalleries);
返回MapLocationItems组合;
}
我得到以下错误:

Error   17  'System.Linq.IQueryable<CanFindLocation.Models.MapLocationItems.MapLocationImageGallery>' does not contain a definition for 'ToListAsync' and no extension method 'ToListAsync' accepting a first argument of type 'System.Linq.IQueryable<CanFindLocation.Models.MapLocationItems.MapLocationImageGallery>' could be found (are you missing a using directive or an assembly reference?)
错误17“System.Linq.IQueryable”不包含“ToListSync”的定义,并且找不到接受“System.Linq.IQueryable”类型的第一个参数的扩展方法“ToListSync”(是否缺少using指令或程序集引用?)
完全相同的代码可以在索引操作结果中正常工作,但在服务方法中却不行。为什么会这样?我怎样才能让它工作


提前感谢

如评论中所述,使用System.Data.Entity(在Entity Framework包下)添加
,以获取
QueryableExtensions


对于.NET Core,这些方法在

下。您是否有正确的using语句
使用System.Data.Entity
只需添加:QueryableExtensions在Entity Framework包中。您知道.NET Core中应该包含哪些内容吗?@mnwsmit看起来应该在“谢谢”下,这节省了我的时间,因为我是.NET Entity Core的新手:)