Arquivo da tag: DataTable

Filtrando as linhas do DataTable com LINQ

Imagine ter um DataTable carregado com os dados de uma consulta SQL, e a necessidade de melhorar o resultado (deixar mais específico). Normalmente faríamos uma nova consulta no banco de dados com uma instrução SQL com condições de retornar um resultado mais específico.

Uma facilidade interessante que descobri recentemente é filtrar linhas de um DataTable usando LINQ.

var filtro = (from DataRow dRow in dtPessoas.Rows
              where dRow["UF"].Equals("SP")
              orderby dRow["nome"].ToString()
              select dRow);

DataTable dtNovo = filtro.CopyToDataTable();

Neste exemplo, o DataTable (dtPessoas) mantém uma relação de pessoas, e por meio do LINQ é aplicado um filtro para obter todas as pessoas contidas no DataTable dtPessoas que moram no Estado SP.

Simples, não?