C # - Linq to SQL, ошибка преобразования типов - PullRequest
3 голосов
/ 03 марта 2010

новичок в LINQ и хотел бы знать, почему ошибка и лучший способ ее устранения.

Я получаю: «Не удалось неявно преобразовать тип« System.Collections.Generic.IEnumerable »в« System.Collections.Generic.List ». Существует явное преобразование (вам не хватает приведения?) 'Ошибка

List<string> names = new List<string>();
names.Add("audi a2");
names.Add("audi a4");

List<string> result1 = new List<string>();

result1=(from name in names
         where name.Contains("a2")
         select name);

Ответы [ 3 ]

6 голосов
/ 03 марта 2010

Результатом from является IEnumerable, вам нужно создать список для его хранения.

result1=(from name in names
                    where name.Contains("a2")
                    select name).ToList();

так что вы можете просто:

List<string> result1 = (from name in names
                                 where name.Contains("a2")
                                 select name).ToList();
3 голосов
/ 03 марта 2010

Добавьте .ToList () в конце вашего запроса Linq.

result1=(from name in names
     where name.Contains("a2")
     select name).ToList();
1 голос
/ 03 марта 2010

Или используя синтаксис функции Linq:

result1 = names.where(x => x.Contains("a2")).ToList();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...