ToListAsync()在ASP NET CORE上失败,但是ToList()起作用-错误“序列不包含任何元素”。

时间:2018-07-12 06:18:41

标签: c# linq entity-framework-core

我得到一个类似的列表:

var test = await list.ToListAsync();

此功能在ASP.NET MVC上可以正常使用,但在迁移到.NET CORE时出现错误

  

序列不包含任何元素。

列表对象是IOrderedQueryable

当我执行句子时:

var test = list.ToList();

工作正常,但我需要一个异步方法...

EntityFrameworkCore版本:2.1.1

对这个问题有任何想法吗?

2 个答案:

答案 0 :(得分:0)

希望它将为您提供所需的列表。

您的界面签名就是这样

Task<ICollection<T>> GetAllAsyn();

您的实现将是这样。

public virtual async Task<ICollection<T>> GetAllAsyn()
{
   return await _context.Set<T>().ToListAsync();
}

答案 1 :(得分:0)

我发现了问题。我得到的选择失败的列表,因为选择内的MAX()失败。

Max()问题(仅发生在EntityFrameworkCore上):-> Stackoverflow: Max return value if empty query