Qual é o efeito de AsEnumerable () em uma entidade LINQ?

Lendo as perguntasAqu eAqu @ me deu uma ideia da situação e parece que o uso do AsEnumerable consome memória. Existe uma maneira melhor de fazer isso LINQ e da maneira como é feito agora, os dados que saem são confiáveis?

Removendo os resultados AsEnumerable em uma "Sequência local não pode ser usada em implementações LINQ to SQL de operadores de consulta, exceto o operador Contém"

var results = from p in pollcards.AsEnumerable()
                          join s in spoils.AsEnumerable() on new { Ocr = p.OCR, fileName = p.PrintFilename } equals new { Ocr = s.seq, fileName = s.inputFileName }
                          where p.Version == null
                          orderby s.fileOrdering, s.seq
                          select new ReportSpoilsEntity
                          {
                              seq = s.seq,
                              fileOrdering = s.fileOrdering,
                              inputFileName = s.inputFileName,
                              Ocr = p.OCR,
                              ElectorName = p.ElectorName
                          };

questionAnswers(3)

yourAnswerToTheQuestion