Как конвертировать IEnumerable <T> в ConcurrentBag <T> в С#? Мой запрос linq возвращает коллекцию IEnumerable<object>. Как я могу преобразовать это в строго типизированный объект коллекции ConcurrentBag<object>? Ответ 1 ConcurrentBag имеет конструктор , который принимает IEnumerable. IEnumerable<T> myEnum = ... ConcurrentBag<T> myBag = new ConcurrentBag<T>(myEnum); Ответ 2 Вы можете использовать правильный конструктор. IEnumerable<Foo> foos = ... ConcurrentBag<Foo> concurrentFoos = new ConcurrentBag<Foo>(foos); Ответ 3 ConcurrentBag<T> имеет конструктор, который принимает IEnumberable<T> качестве входных данных. Несколько коллекций поддерживают это, поэтому обязательно проверяйте перегрузки конструктора. Ответ 4 Вот метод расширения: public static ConcurrentBag<T> ToConcurrentBag<T>(this IEnumerable<T> source) => new ConcurrentBag<T>(source);
Ответ 1 ConcurrentBag имеет конструктор , который принимает IEnumerable. IEnumerable<T> myEnum = ... ConcurrentBag<T> myBag = new ConcurrentBag<T>(myEnum);
Ответ 2 Вы можете использовать правильный конструктор. IEnumerable<Foo> foos = ... ConcurrentBag<Foo> concurrentFoos = new ConcurrentBag<Foo>(foos);
Ответ 3 ConcurrentBag<T> имеет конструктор, который принимает IEnumberable<T> качестве входных данных. Несколько коллекций поддерживают это, поэтому обязательно проверяйте перегрузки конструктора.
Ответ 4 Вот метод расширения: public static ConcurrentBag<T> ToConcurrentBag<T>(this IEnumerable<T> source) => new ConcurrentBag<T>(source);