【发布时间】:2010-09-20 07:10:05
【问题描述】:
我的 linq 查询返回 IEnumerable<object> 的集合。
如何将其转换为集合ConcurrentBag<object> 的强类型对象?
【问题讨论】:
我的 linq 查询返回 IEnumerable<object> 的集合。
如何将其转换为集合ConcurrentBag<object> 的强类型对象?
【问题讨论】:
ConcurrentBag 有一个 constructor,它接受一个 IEnumerable。
IEnumerable<T> myEnum = ...
ConcurrentBag<T> myBag = new ConcurrentBag<T>(myEnum);
【讨论】:
您可以使用proper constructor。
IEnumerable<Foo> foos = ...
ConcurrentBag<Foo> concurrentFoos = new ConcurrentBag<Foo>(foos);
【讨论】:
ConcurrentBag<T> 有一个 constructor,它接受一个 IEnumberable<T> 作为输入。
有几个集合支持这一点,因此请务必检查构造函数重载。
【讨论】:
扩展方法如下:
public static ConcurrentBag<T> ToConcurrentBag<T>(this IEnumerable<T> source) => new ConcurrentBag<T>(source);
【讨论】: