0

我想按方法订购数组:

MyList.OrderBy(p=>CalcValue(p))

我希望计算将异步执行。

我正在使用 .net 4,所以我不能将这些方法声明为异步。

如果我要创建某种代码,首先将计算值,存储它们,然后仅按 lambda 表达式对其进行排序,但我怎样才能直接在 lambda 表达式内部进行呢?

可能吗?

4

1 回答 1

1

从您的问题中不太清楚您到底想要什么。

这可能会对您有所帮助,它会首先计算所有值,然后对其进行排序,尽管在这种情况下我不清楚您的术语 aync。

MyList.Select(p=>new {p,CalcValue = CalcValue(p)})
       .OrderBy(x=>x.CalcValue)
       .Select(x=>x.p);
于 2013-06-06T06:18:37.530 回答