Tutorial C# - Linq to XML
|
|
|
- Alfredo Taveira Pinhal
- 8 Há anos
- Visualizações:
Transcrição
1 Tutorial C# - Linq to XML Date : 19 de Maio de 2009 Olá a todos hoje vou-vos falar de Linq to XML. Já abordei num post anterior este tema mas mais especifico para Datasets. Neste tutorial vou-vos mostrar como podem interagir com ficheiros XML, para isso vamos criar uma pequena aplicação que vai permitir gerir uma base de dados de filmes. Neste tutorial: Vamos navegar, adicionar, editar e apagar elementos de um ficheiro XML através de LINQ, e como irão ver é muito simples e numa sintaxe muito intuitiva. Navegar: Pplware 1 / 9
2 Para navegar por um ficheiro XML temos de o abrir primeiro. XElement Filmes = XElement.Load(caminho); Para vermos os elementos na nossa form utilizei uma treeview, vamos carregar todos os títulos provenientes do ficheiro XML, para isso fazemos uma query LINQ, var query = from Filme in Filmes.Elements("Filme") Pplware 2 / 9
3 select Filme.Element("Titulo"); Carregamos a variável query com os dados do XML, ao encontrar um elemento Filme que é o pai vai retornar todos os Titulos. foreach (var filme in query) { TreeNode childnode = new TreeNode(filme.Value); node.nodes.add(childnode); } Para cada titulo adicionamos o seu Texto á treeview. Adicionar: Para adicionar temos de abrir o ficheiro novamente. E criamos um XELement, com a utilização de LINQ este processo ficou mais simples, é só irmos adicionando novos elementos ou atributos encadiados, neste exemplo criamos um novo filme em que abrimos a tag Filme no inicio e só fechamos no final para este se tornar o pai, os outros elementos são criados e logo fechados, para assim não conterem filhos. XElement novofilme = new XElement("Filme", // Começo do elemento Filme new XElement("Titulo", textbox5.text), // Adicionado o elemento Titulo Pplware 3 / 9
4 new XElement("Rating", textbox6.text), // Adicionado o elemento Rating new XElement("Data", textbox4.text) // Adicionado o elemento Data ); // Fim do elemento Filme Por fim adicionamos este elemento Filme ao ficheiro. Filmes.Add(novoFilme); // Adicionamos o novo filme ao xml Filmes.Save(caminho); // Temos de gravar as alterações para o ficheiro Editar: Para editar o processo é muito semelhante, a única diferença é que em vez de ser do tipo var o elemento tem de ser do tipo IEnumerable para assim podermos aceder ás propriedados dos XElements do loop foreach. A query também sofre uma alteração, em que vamos comparar com uma clausula Where se o titulo do elemento é igual ao item que está seleccionado na treeview. where ((string)b.element("titulo")).equals(treeview1.selectednode.text) No loop como temos acesso ás propriedados do XElement vamos executar a seguinte Pplware 4 / 9
5 instrução para alterar os valores. ex.setelementvalue("titulo", textbox1.text); Como sempre no final temos de gravar o ficheiro. Apagar: O método de apagar é muito semelhante ao editar em que temos de compara o valor do titulo com um node no ficheiro XML depois de encontrado esse valor fazemos um loop e usamos o método ex.element("titulo").parent.remove(); Com esta instrução apagamos o pai deste Titulo, ou seja, apagamos o filme e todos os seus filhos. Para aceder ás propriedades como disse anteriormente a variável da query não pode ser var Pplware 5 / 9
6 mas sim um XElement. Navegação 2: Um dos comportamentos do programa é ao clicar num item da treeview ele popula umas textboxes com os valores desse filme, para fazer isso é muito simples. Abrimos o ficheiro como sempre. Depois na query a grande diferença é que adicionamos propriedades á variável var da query para assim podermos aceder a elas no foreach select new { Titulo = (string)b.element("titulo"), Pplware 6 / 9
7 Rating = (string)b.element("rating"), Data = (string)b.element("data") }; Este pedaço de código vai tornar possível aceder ás propriedades da variável resultante da query, e também ficam disponíveis no intellisense. Depois no loop preenchemos as textboxes com os valores. foreach(var dados in Filme) // a var dados já tem as novas propriedades { textbox1.text = dados.titulo; textbox2.text = dados.rating; textbox3.text = dados.data; } Bom por hoje é tudo espero que tenham gostado. Como podem ver e já o referi num post anterior o Linq é uma Framework muito poderosa, simples e muito útil para tudo (quando digo tudo é mesmo tudo). Pplware 7 / 9
8 Download: Código Linq to XML [110.59KB] Se tiverem alguma duvida ou sugestão sabem onde me encontrar. Boa programação Licença: Freeware Sistemas Operativos: Windows XP/Vista/Win7
9 Powered by TCPDF ( Download: pplware Link to XML [32.69KB] Homepage: Peopleware Pplware 9 / 9
Tutorial C# - ADO.NET
Tutorial C# - ADO.NET Date : 31 de Março de 2009 Olá a todos, hoje vamos falar de ADO.NET e dos elementos que o compõem. E vamos começar a desenvolver a nossa aplicação de Despesas pessoais que irá ter
ASP.NET Área Administrativa
ASP.NET Área Administrativa Date : 26 de Janeiro de 2011 Estamos de volta com mais um tutorial sobre ASP.NET. Hoje iremos começar a criar a área de administração do nosso site. Vamos poder criar empresas,
Introdução ao C# (CSharp)
Introdução ao C# (CSharp) Date : 26 de Novembro de 2008 Nos dias que correm quem está no mundo da informática urge por importantes noções sobre programação. Não menos importante é estar actualizado nessa
Mundo Arduino: Vamos começar a programar?
Mundo Arduino: Vamos começar a programar? Date : 2 de Janeiro de 2014 Por Jorge Alcino para o Pplware O Arduino é uma plataforma de hardware livre, projectado com um microcontrolador Atmel AVR. É uma placa
Tutorial C# Inserção de dados em MySQL
Tutorial C# Inserção de dados em MySQL Date : 4 de Novembro de 2010 Na sequência de tutoriais anteriores, em que demonstrei como efectuar ligações entre o C# e bases de dados, hoje irei mostrar como inserir
MongoDB: Instalar e configurar a BD NoSQL no Windows 10
MongoDB: Instalar e configurar a BD NoSQL no Windows 10 Date : 1 de Maio de 2017 O MongoDB é um novo paradigma no que toca aos conceitos do que são as bases de dados tradicionais, pois este SGBD (sendo
Aprenda a configurar um servidor de DNS
Aprenda a configurar um servidor de DNS Date : 17 de Abril de 2014 Por António Sousa para o Pplware Nos primeiros posts escritos para o PPLWARE decidi abordar um serviço de rede bastante importante, o
MongoDB: Manipular a base de dados NoSQL no Windows 10
MongoDB: Manipular a base de dados NoSQL no Windows 10 Date : 9 de Maio de 2017 No artigo anterior aprendemos a instalar e a configurar a base de dados NoSQL MongoDB. Neste artigo vamos aprender a trabalhar
Desenvolvimento de Aplicações Móveis com HTML5
Desenvolvimento de Aplicações Móveis com HTML5 Date : 9 de Março de 2013 Por Nuno Nunes para o Pplware Workshop realizado no âmbito do Mestrado em Computação Móvel do Instituto Politécnico da Guarda na
Monte um Servidor de DHCP no Windows 7
Monte um Servidor de DHCP no Windows 7 Date : 13 de Abril de 2010 O DHCP é um serviço de rede com o objectivo de automatizar todo o processo de configuração do protocolo TCP/IP nos diversos equipamentos
Tutorial C# - Delegates e Eventos...
Tutorial C# - Delegates e Eventos... Date : 16 de Março de 2009 Olá a todos. Hoje vou-vos falar de Delegates e Eventos, o que são e para que servem. Esta é a aplicação que vos disponibilizo para testarem
Live Mesh - A rede de nós segundo a Microsoft
Live Mesh - A rede de nós segundo a Microsoft Date : 12 de Junho de 2009 Por Paulo Izidoro para o Pplware Está a pensar poder aceder a ficheiros ou até a um computador da sua rede a partir de uma rede
Aprenda a instalar o Windows 10 no VirtualBox
Aprenda a instalar o Windows 10 no VirtualBox Date : 1 de Outubro de 2014 Depois de muitos artigos escritos sobre o (virtual) Windows 9, a Microsoft decidiu saltar para o Windows 10 e durante o dia de
3 apps para fazer root ao seu android
3 apps para fazer root ao seu android Date : 8 de Junho de 2016 Uma das principais características do Android é a possibilidade de alterar, personalizar ou desbloquear os diversos recursos que este sistema
O Windows desde... sempre! - Parte #0
O Windows desde... sempre! - Parte #0 Date : 23 de Março de 2010 No seguimento de um artigo aqui publicado há alguns meses, A história do Windows em recursos do sistema!, que criou saudade a muitos e curiosidade
Ajuda para recuperar ficheiros eliminados? Puran File Recovery
Ajuda para recuperar ficheiros eliminados? Puran File Recovery Date : 1 de Novembro de 2013 Se forem daqueles utilizadores que já tentaram utilizar vários tipos de ferramentas para tentar recuperar ficheiros
Dicas de VBA - Personalizar o Friso I
Dicas de VBA - Personalizar o Friso I Date : 6 de Outubro de 2011 Por Jorge Paulino para o Pplware Num artigo anterior referi como executar uma macro usando uma determinada combinação de teclas. É uma
Windows Server 2008 Vamos criar um domínio
Windows Server 2008 Vamos criar um domínio Date : 25 de Outubro de 2013 No Pplware temos abordado as características e funcionalidades dos mais diversos sistemas operativos. Apesar de hoje em dia os sistemas
Tutorial Photoshop #3 Efeito de reflexo
Tutorial Photoshop #3 Efeito de reflexo Date : 10 de Dezembro de 2008 Como eu tinha mencionado, estes tutoriais de Photoshop servem também para criar uma interacção entre todos os intervenientes do nosso
A melhor forma de partilha entre o PC e o Android!
A melhor forma de partilha entre o PC e o Android! Date : 25 de Abril de 2011 Já fez mais de um ano que o Pedro Simões deu a conhecer a aplicação WebSharing File/Media Sync. Esta aplicação facilita a troca
Windows: Pasta AppData para que serve?
Windows: Pasta AppData para que serve? Date : 1 de Agosto de 2017 O Consultório Pplware traz-nos questões muito interessantes que até nos ajudam a perceber como os utilizadores olham para os seus computadores
Viber Chamadas Grátis a partir do seu iphone
Viber Chamadas Grátis a partir do seu iphone Date : 9 de Dezembro de 2010 As comunicações estão a mudar. O mundo VoIP está a tomar conta do que ainda está preso às amarras dos operadores e esta será uma
PrivaZer, privacidade e manutenção na ordem do dia
PrivaZer, privacidade e manutenção na ordem do dia Date : 21 de Agosto de 2012 A segurança e manutenção da nossa privacidade são como o sal nas batatas: nunca é demais. Por isso uma das minhas principais
5 Dicas: acabe com os problemas de armazenamento no Android
5 Dicas: acabe com os problemas de armazenamento no Android Date : 5 de Dezembro de 2016 Quantas vezes tentou tirar uma nova fotografia ou instalar uma nova aplicação e recebeu um alerta de que não não
S2E no Android Mover aplicações da memória interna para SD
S2E no Android Mover aplicações da memória interna para SD Date : 21 de Novembro de 2011 Por Miguel Almeida para o PPLWARE.COM Já lhe aconteceu ter a memória interna do seu smartphone cheia e ter que remover
AOMEI Partition Assistant, uma forma gratuita de gerir partições
AOMEI Partition Assistant, uma forma gratuita de gerir partições Date : 1 de Março de 2017 O particionamento é algo que ainda muitas pessoas desconhecem. Quando é adquirido um computador ou disco externo,
Sabe fazer backups do Windows 10? E recuperar ficheiros?
Sabe fazer backups do Windows 10? E recuperar ficheiros? Date : 4 de Janeiro de 2017 Com os perigos a que estamos expostos hoje em dia, é importante ter preparados backups e outros mecanismos para salvaguardar
Partilha de ficheiros por rede entre Mac e Windows
Partilha de ficheiros por rede entre Mac e Windows Date : 4 de Janeiro de 2010 Hoje temos um post com qualidade extra! Muitos de nós têm mais de um computador em casa, sejam Mac's, Windows, Linux,... E,
Avira PC Cleaner, do alerta para a segurança
Avira PC Cleaner, do alerta para a segurança Date : 15 de Janeiro de 2014 As ferramentas que nos podem ajudar a detectar uma eventual infecção no nosso sistema são sempre uma mais-valia. Mas tornam-se
É simples e intuitivo instalar o novo Linux CentOS 7.0
É simples e intuitivo instalar o novo Linux CentOS 7.0 Date : 11 de Julho de 2014 O CentOS (Community enterprise Operating System) é uma distribuição Linux de classe Enterprise, baseada em código fonte
Linux Caixa Mágica 12 - Instalação
Linux Caixa Mágica 12 - Instalação Date : 20 de Fevereiro de 2008 Todos já ouviram o "boato" do lançamento do "novo" Linux Caixa Mágica, na versão 12, hoje, trago-vos um artigo onde mostro todo o processo
BMLABEL MANUAL DO UTILIZADOR
MANUAL DO UTILIZADOR Ao executar o programa abre-se uma janela com a lista das empresas registadas e 2 menus activos: Menu Seleccionar para seleccionar a empresa. Menu Sair para sair da aplicação. Para
Esqueceu uma palavra-passe? Use o browser para a recuperar!
Esqueceu uma palavra-passe? Use o browser para a recuperar! Date : 6 de Junho de 2016 As palavras-passe sempre foram uma dor de cabeça para os utilizadores. A segurança que fornecem chocam com a obrigação
Kodi: Como configurar o serviço de legendas
Kodi: Como configurar o serviço de legendas Date : 19 de Janeiro de 2016 Muitos são os utilizadores do Kodi que perguntam como podem ter acesso a algum serviço de legendas, tendo sido esta uma questão
Collectorz Movie Collector, só para os amantes de Filmes e Séries!
Collectorz Movie Collector, só para os amantes de Filmes e Séries! Date : 23 de Julho de 2015 O mundo do software consegue surpreender todos os dias, mas sabemos que há aplicações para tudo. Hoje trazemos
Saiba como fazer Jailbreak no Windows RT
Saiba como fazer Jailbreak no Windows RT Date : 27 de Fevereiro de 2013 É comum existirem bloqueios em dispositivos à venda no mercado. Esses bloqueios, impostos pelos fabricantes, servem não só para dar
Nimbus - Configuração de um Servidor de Backup
Nimbus - Configuração de um Servidor de Backup Date : 18 de Abril de 2013 Nimbus é uma distribuição brasileira de linux com um servidor de backups opensource parcialmente configurado e tendo como parte
Configurar e usar o Voltar ao meu Mac
Configurar e usar o Voltar ao meu Mac Date : 31 de Agosto de 2015 Há funcionalidades que são muito simples de fazer num sistema operativo e mais complicado de activar num outro diferente. Deixamos hoje
Aprenda a instalar o Windows 8 no VirtualBox
Aprenda a instalar o Windows 8 no VirtualBox Date : 15 de Setembro de 2011 O hype do Windows 8 está aí! Nos últimos dias temos trazido até aos nossos leitores todas as novidades do novo sistema operativo
Como utilizar o Histórico de Ficheiros no Windows 10
Como utilizar o Histórico de Ficheiros no Windows 10 Date : 5 de Julho de 2017 O Windows 10 inclui muitos recursos que grande parte dos utilizadores ainda desconhece. Um dos recursos que poderá ainda não
YouTube - 9 truques que tem de conhecer
YouTube - 9 truques que tem de conhecer Date : 15 de Fevereiro de 2017 O YouTube é o maior agregador de vídeo do mundo. Pese o facto de haver muitos e de altíssima qualidade, a realidade mostra que o YouTube
Ganhem 1TB de armazenamento em cloud com o Mail.Ru
Ganhem 1TB de armazenamento em cloud com o Mail.Ru Date : 4 de Janeiro de 2014 Os serviços de armazenamento na nuvem são já como um bem essencial tecnológico, quer pela sua portabilidade quer para backup.
Proteja-se configurando bem o Windows Defender no Windows 10
Proteja-se configurando bem o Windows Defender no Windows 10 Date : 29 de Novembro de 2016 Os antivírus são uma presença obrigatória nos sistemas operativos para proteger os utilizadores contra todos os
Como criar um ISO do Windows 8 para posterior instalação?
Como criar um ISO do Windows 8 para posterior instalação? Date : 15 de Novembro de 2012 Com o lançamento do Windows 8 a Microsoft deu um passo de gigante na transformação do nosso Ambiente de Trabalho
TOP 10 - Editores de texto para Windows e Linux
TOP 10 - Editores de texto para Windows e Linux Date : 22 de Agosto de 2013 Um editor de texto é sem duvida uma ferramenta essencial em qualquer sistema operativo. Além das funcionalidades básicas de edição
Manual de Utilizador do Backoffice
Manual de Utilizador do Backoffice Conteúdo Acesso ao Backoffice... 2 Actualizar Conteúdos do Website... 3 Homepage... 3 Quem Somos... 5 Serviços... 7 Outros Produtos... 8 Empresas Parceiras... 9 Contactos...
3 formas para descarregar vídeos do YouTube para Mac
3 formas para descarregar vídeos do YouTube para Mac Date : 26 de Abril de 2016 É uma boa ideia, sem dúvida, podermos descarregar vídeos do YouTube para Mac. Assim, podemos de forma local, offline, ver
8 Dicas para gerir os Separadores no Safari
8 Dicas para gerir os Separadores no Safari Date : 22 de Junho de 2016 Se é um utilizador Mac sabe de certeza que o browser mais rápido que tem no seu OS X é o Safari, não há outro que consiga ser tão
Crie a sua Wikipedia com o MediaWiki em 15 minutos
Crie a sua Wikipedia com o MediaWiki em 15 minutos Date : 15 de Junho de 2013 Porque continuamos a construir sites? Esta é a questão que coloco depois de nos últimos tempos terem aparecido tantas ferramentas/plataformas,
Projecto Deskmod Windows 7 Centrar ícones da Superbar
Projecto Deskmod Windows 7 Centrar ícones da Superbar Date : 10 de Dezembro de 2010 Por Ricardo Pereira para o PPLWARE.COM No seguimento do projecto de Deskmod no Windows 7, hoje vamos falar sobre uma
Uma das melhores alternativas à Adobe: Wondershare PDFelement
Uma das melhores alternativas à Adobe: Wondershare PDFelement Date : 20 de Janeiro de 2016 Quando falamos de PDF, o nome que logo surge é o da Adobe. Mas nem sempre esse nome aparece associado às melhores
5 Aplicações que não necessita de instalar no Windows 8
5 Aplicações que não necessita de instalar no Windows 8 Date : 18 de Junho de 2013 Desde há alguns anos para cá que o Windows deixou de ser apenas um sistema operativo, passando a oferecer um conjunto
Personalize a Prompt de comandos da Bash no Linux
Personalize a Prompt de comandos da Bash no Linux Date : 26 de Novembro de 2017 A linha de comandos dos sistemas UNIX é algo incrivelmente poderosa que qualquer um pode experimentar e aprender. Basta dispensar
SmartVoip Chamadas GRÁTIS do computador para telefone
SmartVoip Chamadas GRÁTIS do computador para telefone Date : 25 de Novembro de 2009 Hoje venho dar-vos a conhecer o Smart Voip, uma aplicação VOIP. Ao contrário de outras aplicações de chamadas telefónicas
Aprenda como fazer - Dual Boot: Windows 8 vs Linux
Aprenda como fazer - Dual Boot: Windows 8 vs Linux Date : 6 de Novembro de 2012 Nos últimos tempos, são muitos os leitores que têm experimentado pelo menos uma distribuição Linux, avaliando os comentários
Deskmod no Windows 7 - Agora vai ser a doer!
Deskmod no Windows 7 - Agora vai ser a doer! Date : 22 de Novembro de 2010 Por Ricardo Pereira para o PPLWARE À medida que a Microsoft foi desenvolvendo os seus Sistemas Operativos ao nível funcional,
Como criar um blog no Wordpress
Como criar um blog no Wordpress Date : 31 de Maio de 2010 Por Nuno Barros para o PPLWARE.COM O objectivo deste artigo é, como o título indica, explicar a todos os leitores do PPLWARE.COM como podem criar
Conheça 5 boas extensões para usar no Edge
Conheça 5 boas extensões para usar no Edge Date : 28 de Novembro de 2016 Os browsers são, cada vez mais, ferramentas que usamos para além da navegação na Internet. A chegada das extensões revolucionou
5 / 5. Powered by TCPDF (www.tcpdf.org)
1 / 5 2 / 5 Livro...O...SEGREDO...DA...APROVAO...EM...CONCURSOS,...de...Raquel...Barros,...concurseira... aprovada...em...diversos...concursoscurso...de...leitura...dinmica...para...agilizar...seus...est
Aprenda a usar a Firewall do Windows 8 (Parte I)
Aprenda a usar a Firewall do Windows 8 (Parte I) Date : 20 de Março de 2013 Não desligue a Firewall.crie regras! Todos nós temos a noção que é importante dispormos de mecanismos de segurança nos nossos
PhotoDemon: editor de imagem rápido, poderoso e portátil
PhotoDemon: editor de imagem rápido, poderoso e portátil Date : 30 de Abril de 2014 Editores de foto e imagem há muitos - uns melhores outros piores. Mas hoje em dia sabemos que os utilizadores procuram
Como sincronizar contactos do icloud com o Gmail
Como sincronizar contactos do icloud com o Gmail Date : 28 de Janeiro de 2016 Para quem tem dois sistemas operativos de eleição, ios e Android, é importante sincronizar contactos assim como tudo o resto
GLPI Gestão total e gratuita do seu parque informático
GLPI Gestão total e gratuita do seu parque informático Date : 20 de Maio de 2016 Quando se é administrador de um parque informático de escala média/grande é importante possuir as melhores plataformas para
Vamos transformar os seus Raspberry PI num cluster (Parte 2)
Vamos transformar os seus Raspberry PI num cluster (Parte 2) Date : 31 de Março de 2016 O Apache Hadoop é uma Framework/Plataforma desenvolvida em Java, para computação distribuída, usada para processamento
