OriginalGriff
t
это IEnumerable<T>
не List<T>
И folder
может содержать только списки, которые являются "надмножеством" IEnumerable.
Вы можете сделать это наоборот:
IEnumerable<string> t;
List<string> folder = new List<string>();
t = folder;
Потому что каждый список неисчислим - но вы не можете сделать это по-другому.
Подумайте об этом: что бы произошло, если бы вы могли? Когда вы попытаетесь использовать список, специфических функций списка (индексирование, добавление и удаление элементов и т. д.) там не будет, поэтому код будет неудачным.
Вы можете сделать это с помощью метода Linq для преобразования IEnumerable в список:
IEnumerable<string> t = ...;
List<string> folder = t.ToList();
Но это создает новый объект (список), который содержит те же элементы, что и исходный IEnumerable, но который не "прикреплен" к нему, поэтому изменения в одном не повлияют на другой.