Есть ли неявный способ рассказать об общей коллекции для использования Type
входящих IEnumerable<T>
данных?Может ли подразумеваться тип данных для общего списка <T>?
Предположим, что любой тип может быть поступающим, поскольку он может быть скрыт, например, через IQueryable и может содержать анонимный тип.
var enumerableThings = //... enumerable<T> obtained from somewhere.
Точка T неизвестна.
Я хочу создать List<T>
первичного Тип перечислимых вещей:
var listOfThoseThings = new List<???>(enumerableThings);
Есть много интересных механизмов в C#/NET.. Я не удивлюсь, если найду способность выполнять эту задачу; однако в настоящий момент меня укрывает краткий путь.
Это, конечно, перечислит IEnumerable при вызове, что может иметь последствия, если ваш перечислимый linq-sql или любой другой длинный набор. – asawyer
@asawyer: Это верно для любого 'List', независимо от того, как вы его создаете. –
SLaks
Да, просто отметив это для @JohnK. Не хотел бы узнать, что он этого не понимал, и закончил переписывание linq в sql-запрос дюжину раз в функции или что-то еще :) – asawyer