有没有办法在C#中使用异步foreach?其中id(s)将由方法异步处理,而不是使用Parallel.ForEach
//This Gets all the ID(s)-IEnumerable <int>
var clientIds = new Clients().GetAllClientIds();
Parallel.ForEach(clientIds, ProcessId); //runs the method in parallel
static void ProcessId(int id)
{
// just process the id
}
Run Code Online (Sandbox Code Playgroud)
应该是一个foreach,但异步运行
foreach(var id in clientIds)
{
ProcessId(id) //runs the method with each Id asynchronously??
}
Run Code Online (Sandbox Code Playgroud)
我正在尝试在控制台中运行程序,它应该在关闭控制台之前等待所有ID完成处理.
我有这个数据:
CategoryId Value
1 val1
1 val2
1 val2
2 test1
2 test1
3 data1
3 data2
3 data2
Run Code Online (Sandbox Code Playgroud)
我想要的输出是这样的:
CategoryId Value
1 val1. val2.
2 test1.
3 data1. data2.
Run Code Online (Sandbox Code Playgroud)
输出应该在CategoryId中是唯一的,并且每个类别只应显示不同的值并以1列值连接在一起.(假设值是长度为1到3个句子的字符串值).我如何在LINQ中查询?或者我如何将它与我想要的输出分组?