Como: Armazenar os resultados de uma consulta na memória (guia de programação translation from VPE for Csharp)

Uma consulta é basicamente um conjunto de instruções sobre como recuperar e organizar dados.Para executar a consulta exige uma telefonar para o seu GetEnumerator método. Essa telefonar é feita quando você usa um foreach Faça um loop para iterar sobre os elementos. Para armazenar os resultados a qualquer momento antes ou depois de executar o foreach loop, basta chamar um dos seguintes métodos na variável de consulta:

Recomendamos que quando você armazena sistema autônomo resultados da consulta, você atribuir o objeto da coleção retornada a uma nova variável conforme mostrado no exemplo a seguir:

Exemplo

class StoreQueryResults
{
    static List<int> numbers = new List<int>() { 1, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 };
    static void Main()
    {

        IEnumerable<int> queryFactorsOfFour =
            from num in numbers
            where num % 4 == 0
            select num;

        // Store the results in a new variable
        // without executing a foreach loop.
        List<int> factorsofFourList = queryFactorsOfFour.ToList();

        // Iterate the list just to prove it holds data.
        foreach (int n in factorsofFourList)
        {
            Console.WriteLine(n);
        }

        // Keep the console window open in debug mode.
        Console.WriteLine("Press any key");
        Console.ReadKey();
    }
}

Compilando o código

  • Criar um Visual Studio projeto que se destina a .NET estrutura versão 3.5. Por padrão, o projeto tem uma referência a sistema.Core.dll e um using diretiva para o namespace sistema.LINQ.

  • Copie o código em seu projeto.

  • Pressione F5 para compilar e executar o programa.

  • Pressione qualquer tecla para sair da janela do console.

Consulte também

Conceitos

Expressões de consulta do LINQ (guia de programação translation from VPE for Csharp)