Consultas LINQ: Operações, Agregação e Manipulação XML

Computação3,53 KB

Objetivo das Expressões de Consulta LINQ

As expressões de consulta LINQ são utilizadas para especificar operações em coleções de dados. As cláusulas principais incluem:

  • From: Especifica uma fonte de dados e uma variável local que representa cada elemento da coleção. from <elementos> in <fonte de dados>
  • Where: Especifica critérios de restrição da consulta, selecionando resultados que satisfaçam uma expressão lógica. where <expressão logica>
  • Select: Especifica os valores que devem resultar da pesquisa. select <expressão>
  • Group: Agrupa os resultados de uma consulta de acordo com uma determinada chave. group <element> by <critério>
  • Into: Fornece um identificador que pode servir como referência aos resultados de uma cláusula join, group ou select. <consulta> into <variavel>
  • Orderby: Ordena os resultados, de forma ascendente ou descendente.
  • Join: Combina duas fontes de dados usando um critério de correspondência entre elas (por exemplo, igualdade de dois campos).
  • Let: Introduz uma variável local para armazenar os resultados de uma subconsulta.

O que são Operações de Agregação?

Realizam uma operação sobre:

  • Todos os objetos de uma coleção.
  • Objetos que satisfaçam uma determinada condição.

Exemplo: Max(), Min(), Average(), Count(). São operações implementadas como métodos de extensão (fazem parte da maioria das classes .NET).

Manipulação de Ficheiros XML com LINQ

A arquitetura LINQ permite manipular diretamente ficheiros XML. As árvores XML são representadas em termos das classes XElement e XAttribute devido à inexistência de tipagem de dados em XML.

  • XElement: Representa um nó numa árvore XML e possui métodos para carregar e gravar a árvore em ficheiro.
  • XAttribute: Representa um atributo de um nó (elemento) XML.

Métodos para Manipulação de Ficheiros XML

  • Método Elements(): Permite obter os elementos de um determinado nó ou que possuam um determinado nome.
  • Método Descendants(): Permite procurar, na árvore XML, todos os descendentes de um certo nó ou com um determinado nome.
  • Propriedade Value: Permite obter o valor texto de um certo nodo (XElement).

Geração e Atualização Dinâmica de Árvores XML

A combinação de expressões de consulta com a utilização de XElement permite gerar e atualizar dinamicamente árvores XML.

Possíveis Problemas na Cópia de Dados

Os possíveis problemas durante a cópia dos dados incluem:

  • O disco pode ficar cheio.
  • Erros de leitura dos dados.
  • Erros de escrita dos dados.

O que são Threads?

Fluxo de execução (thread) é uma sequência pela qual um conjunto de instruções de uma aplicação são executadas. Uma aplicação pode ser:

  • Single threaded: Possui apenas um fluxo de execução.
  • Multi threaded: Possui dois ou mais fluxos de execução simultâneos.

Baixar

PDF Word HTML