System.Array. не содержит определения для "ToList"
Я получаю вышеуказанную ошибку в строке ToList() кода ниже
if (emailReplyTo != null)
{
System.Collections.Generic.List<String> replyto
= emailReplyTo
// Strip uneccessary spaces
.Replace(", ", ",")
.Split(',')
.ToList();
request.WithReplyToAddresses(emailReplyTo);
}
Я включил using System.Collections;
в начало моего файла.
Целевая структура - 3.5, так почему это вызывает ошибку?
Ответы
Ответ 1
Метод ToList
, который вы ищете, является методом расширения. Попробуйте добавить эту директиву using
в начало файла:
using System.Linq;
Добавив эту директиву using
, вы указываете компилятору, что любые методы расширения в этом пространстве имен должны быть импортированы. Это позор, что нет никакой помощи от Visual Studio по импорту методов расширения (ReSharper делает это довольно красиво).
Ответ 2
В случае, если кто-то наткнется на эти вопросы после поиска в Интернете...
У меня была такая же проблема в представлениях Razor, и добавление using System.Linq
наверху не помогло.
Что вызвало вызов .Cast()
перед использованием методов расширения Linq:
myArrayVariable.Cast<SomeClass>().ToList() //ok, NOW ToList works fine
Ответ 3
ToList() - это метод расширения. Возможно, вам не хватает
using System.Linq;
Ответ 4
Вы также можете сделать это без .toList, сохраняя в том числе всю библиотеку по какой-либо причине.
новый список (массив)
Ответ 5
Это просто потому, что ArrayList
не выставляет метод с именем ToList
.
Смотрите эту страницу MSDN для просмотра таблиц доступных вам членов.
Как объясняется другими, вы можете получить доступ к этому методу расширения, импортировав библиотеку Linq:
using System.Linq;
Кроме того, см. эту ссылку для пользовательской реализации таких, если вы хотите ее реализовать.
Ответ 6
Это потому, что методы расширения Enumerable недоступны.
Вам нужно добавить "using System.Linq"
Ответ 7
Это сработало для меня:
var lst = ((IEnumerable<XElement>)doc.Element("cards").Elements("card")).ToList();
Мой первоначальный результат был просто динамичным. Метод .Cast() дал мне ту же ошибку, что и ToList(), но это помогло.