【发布时间】:2017-05-11 11:55:22
【问题描述】:
我有一个 LINQ 自定义扩展方法:
public static IEnumerable<T> DistinctBy<T, TKey>(this IEnumerable<T> items, Func<T, TKey> property)
{
return items.GroupBy(property).Select(x => x.First());
}
我是这样使用它的:
var spc = context.pcs.DistinctBy(w => w.province).Select(w => new
{
abc = w
}).ToList();
但问题是我不想要 ToList() 我想要这样的东西
var spc = await context.pcs.DistinctBy(w => w.province).Select(w => new
{
abc = w
}).ToListAsync();
使用异步。但是没有找到异步。我怎样才能让我的自定义方法 distinctBy 这样我也可以异步使用它?
【问题讨论】:
-
您是否尝试过使用
IQueryable而不是IEnumerable作为返回类型和参数项?看起来ToListAsync是IQueryableEF 的扩展方法:msdn.microsoft.com/en-us/library/…
标签: c# .net entity-framework linq extension-methods