CS1935 de erro do compilador

Mensagem de erro

Não foi possível encontrar uma implementação do padrão de consulta para o tipo de fonte 'tipo'. 'método ' não encontrado.Está faltando uma referência a 'sistema.Core.dll' ou um usando diretiva para 'sistema.Linq'?

O tipo de fonte em uma consulta deve ser IEnumerable, IEnumerable<T>, ou um tipo derivado, ou um tipo para o qual você ou outra pessoa tiver implementado os operadores de consulta padrão. Se o tipo de fonte for um IEnumerable ou IEnumerable<T>, você deve adicionar uma referência a sistema.core.dll e um using diretiva para o namespace sistema.LINQ trazer métodos de extensão do operador de consulta padrão para o escopo. Implementações personalizadas dos operadores de consulta padrão devem ser colocadas no escopo da mesma forma, com um using diretiva e, se necessário, uma referência ao assembly.

Para corrigir este erro

  • Adicionar o necessário usando as diretivas e referências para o projeto.

Exemplo

O código a seguir gera CS1935 porque o using diretiva para sistema.LINQ comentada:

// cs1935.cs
// CS1935
using System;
using System.Collections.Generic;
// using System.Linq;


class Test
{
    static int Main()
    {
        int[] nums = {0,1,2,3,4,5};
        IEnumerable<int> e = from n in nums
                        where n > 3
                        select n;
        return 0;
    }
}

Consulte também

Conceitos

Visão geral sobre operadores de consulta padrão