IAsyncEnumerable
不可能运行两次枚举?
一旦CountAsync
运行,await foreach
将不会枚举任何项目。为什么?似乎没有重置方法AsyncEnumerator
。
var count = await itemsToImport.CountAsync();
await foreach (var importEntity in itemsToImport)
{
// won't run
}
数据来源:
private IAsyncEnumerable<TEntity> InternalImportFromStream(TextReader reader)
{
var csvReader = new CsvReader(reader, Config);
return csvReader.GetRecordsAsync<TEntity>();
}