Ответ 1
Самый простой способ преобразования ICollection
в List
- использование LINQ like (MSDN)
List<T> L = C.ToList();
Не забудьте добавить
using System.Linq;
иначе ToList()
недоступен.
Я пытаюсь преобразовать ICollection в List, используя ниже код -
ICollection<DataStructure> list_Stuctures = dataConnectorService.ListStructures(dataConnector, SupportedDataStructures.All);
List<DataStructure> lst_DataStructure = new List<DataStructure>();
list_Stuctures.CopyTo(lst_DataStructure);
В последней строке я получаю ниже исключения -
Exception = TargetParameterCountException
Сообщение = Несоответствие счетчика параметров.
Как преобразовать ICollection в список?
Самый простой способ преобразования ICollection
в List
- использование LINQ like (MSDN)
List<T> L = C.ToList();
Не забудьте добавить
using System.Linq;
иначе ToList()
недоступен.
Вы можете предоставить коллекцию в качестве аргумента в конструкторе List<T>
:
List<DataStructure> lst_DataStructure = new List<DataStructure>(list_Stuctures);
Или используйте метод расширения .ToList()
, который делает то же самое.
Держите его простым, ToList:
List<DataStructure> lst_DataStructure = list_Stuctures.ToList();
Поскольку ICollection реализует IEnumerable, вы можете использовать foreach.
foreach(var item in list_Stuctures)
{
lst_DataStructure.ADD(item);
}
Вы можете только для каждого из них ^^
foreach (DataStructure ds in list_Stuctures)
lst_DataStructure.Add(ds);