Observable.Do 等价于 Enumerable [重复]
Posted
技术标签:
【中文标题】Observable.Do 等价于 Enumerable [重复]【英文标题】:Equivalence of Observable.Do for Enumerable [duplicate] 【发布时间】:2021-02-06 14:47:08 【问题描述】:System.Reactive 中有一个 Do 方法来为序列中的每个项目执行一个 mutator。
在标准库或第三方(如morelinq)中是否有任何等效的 IEnumerable 方法?
【问题讨论】:
【参考方案1】:LINQ 查询运算符通常意味着没有副作用。你可以使用foreach
循环来“做”你的事情。
如果您不关心副作用,也可以使用Select
或Where
方法:
enumerable.Select(x => /*do something here */ return x; )
对于List<T>
,有一个ForEach
扩展方法可用于为每个元素执行Action<T>
。
【讨论】:
Do 方法作为管道的一部分执行操作。 ForEach 为物化列表执行此操作,这不是我需要的。我需要它的拉取版本。 我知道,因此答案中的“对于List<T>
...”。那么使用我的前两个建议中的任何一个吗?以上是关于Observable.Do 等价于 Enumerable [重复]的主要内容,如果未能解决你的问题,请参考以下文章
csharp 例如-CSHARP-GroupDocs.Text.Examples.CSharp-ContainerExtractor-EnumeratingAllEntities.cs
csharp 例如-CSHARP-GroupDocs.Text.Examples.CSharp-ContainerExtractor-EnumeratingAllEntities.cs
csharp 例如-CSHARP-GroupDocs.Text.Examples.CSharp-ContainerExtractor-EnumeratingAllEntities.cs
csharp 例如-CSHARP-GroupDocs.Text.Examples.CSharp-ContainerExtractor-EnumerateAllArchivedFiles.cs
csharp 例如-CSHARP-GroupDocs.Text.Examples.CSharp-ContainerExtractor-EnumerateAllArchivedFiles.cs