gpt4 book ai didi

c# - 如何在没有返回值的情况下从 Linq 语句调用函数?

转载 作者:太空宇宙 更新时间:2023-11-03 21:08:52 25 4
gpt4 key购买 nike

我编写了一个 LINQ 语句,将枚举名称列表与字典中存在的任何条目相匹配。然后我想调用一个函数并将匹配的字符串传递给它。我有这个并且它可以工作但是它闻起来有点味道,特别是必须从我的函数返回一个字符串。

var pas = Enum.GetNames(typeof(enums))                          
.Select(x => { return DoSomething(x); }).ToList();

DoSomething 看起来像:

private string DoSomething(string name)
{
// do stuff
return name;
}

是否可以重写它以使函数无效?

最佳答案

Linq是Selecting data,因为void没有数据所以不能用。

但是有 2 种方法是为调用值列表上的函数而设计的

来自列表

Enum.GetNames(typeof(enums)).ToList().ForEach(DoSomething)

来自并行

Parallel.ForEach(Enum.GetNames(typeof(enums)), DoSomething)

第二个将使用多线程异步执行它们

关于c# - 如何在没有返回值的情况下从 Linq 语句调用函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39144785/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com