2016-02-17 3 views
3

Я хочу, чтобы выбрать все слова из списка, длина которого меньше или равно 5. Мой текущий код возвращает только это:C#: LINQ возврат булева вместо строки

  1. истинного
  2. ложных
  3. ложные
  4. правда
  5. правда
  6. правда

Я хочу, чтобы результат был фактическим.

static void Main() 
{ 
    string[] words = { "hello", "Welcome", "Rolling", "in", "The", "Deep" }; 
    var shortWords = from word in words select word.Length <= 5; 

    foreach (var word in shortWords) { 
     Console.WriteLine(word); 
    } 

    Console.Read(); 
} 

ответ

8

Похоже, вы имели в виду, чтобы сделать

var shortWords = from word in words where word.Length <= 5 select word; 

или просто

var shortWords = words.Where(word => word.Length <= 5); 
+0

спасибо это работа :) –

+0

Это стоит маркировка это как ответ, если он помог вам, так что люди не колеблясь отвечать на ваши будущие вопросы. –

Смежные вопросы