我可以像这样按值对我的 ConcurrentDictionary 进行排序:
static ConcurrentDictionary<string, Proxy> Proxies =
new ConcurrentDictionary<string, Proxy>();
Proxies.OrderBy(p => p.Value.Speed);
这很好,除了我想将新的重新排序列表设置为字典,有效地对字典本身进行排序,而不仅仅是接收排序项目的结果列表。
我尝试做这样的事情但没有运气 - 字典在之后仍然是无序的:
Proxies = new ConcurrentDictionary<string,Proxy>(
Proxies.OrderBy(p => p.Value.Speed));
似乎这样做对字典没有影响。我还尝试将 OrderBy 结果转换为一个新的 var,认为它可能会对委托产生影响,但仍然没有运气。
如何重新排序这个 ConcurrentDictionary,然后强制字典成为 OrderBy 的重新排序结果?