Senhores, bom dia.

Marquem em suas agendas: no próximo dia 03 de abril, um evento que promete trazer muitas novidades acerca do Visual Studio 2010, cuja versão RC1 já foi liberada para download e, inclusive, já pode ser colocada em produção: o dotNETday
Entre outros temas, serão abordadas as novidades do Visual Studio 2010 ,Entity Framework 4, WPF, Web Forms 4.0, AJAX 4.0 e muito mais.

Para obter mais detalhes deste evento, acesse: http://www.dotnetday.com.br/ e siga-o no Twitter.

Clique nos links a seguir para efetuar as inscrições nas quatro partes do evento: Parte1  Parte2  Parte3 Parte4

Quando o assunto é aprender, EU QUERO É MAIS!

Atenciosamente,
Ítalo Chesley

--> Marcadores:

Às vezes precisamos gravar e/ou pesquisar dados em arquivos XML para alimentar uma base de dados ou extrair dados dela e utilizar para outros fins, então, começamos a nos perguntar: Como fazer isso?
Em versões anteriores do .NET Framework há outras formas de fazê-lo, mas que, em termos de performance, são consideradas mais dispendiosas. Na versão 3.5 do .NET Framework recebemos um presente que vai agilizar muito o andamento dos nossos projetos: O LINQ! E como não poderia deixar de ser, temos também o LINQ TO XML, para trabalhar com arquivos em XML de forma rápida e fácil, sem grandes dores de cabeça.

O LINQ TO XML está implementado no Namespace System.XML.LINQ, portanto, esse será nosso ponto de partida.

Então mãos a obra!

Adicione entre as Using do projeto, o Namespace System.XML.LINQ, para que possamos utilizar as classes do LINQ TO XML durante o Desenvolvimento do nosso raciocínio.

As usings do Projeto deverão ficar assim:










Imagem 1: usings

Além do Namespace System.XML.Linq, implementamos o System.IO, que utilizarmos logo a seguir, na explicação do código.


















Imagem 2: Método de inserção de dados

Muito bem senhores, aqui iniciamos o nosso trabalho propriamente dito. Apesar de o LINQ TO XML ter muitas classes para nossa utilização, trabalharemos, aqui, apenas com o XElement, pois ele tem o poder que precisamos para executar nossa tarefa. Caso queira entender com mais profundidade o LINQ TO XML, aqui, terá informações mais aprofundadas.

Embora tenha colocado todo o código, vou explicá-lo linha a linha.

Primeiro, criamos uma instância global do XElement e o denominamos objXElement. Sendo ela global, poderemos utilizar a mesma instância em todos os nossos métodos, lembrando que não estamos pensando em otimização, mas no aprendizado da classe. A performance dependerá do contexto em que você irá utilizá-la.

Depois de criar a instância, já podemos começar a utilizá-la:

Criei um procedimento que fará a gravação dos dados, e esse procedimento, recebe como parâmetro o caminho do arquivo onde serão gravados os dados. Inicialmente, verificamos então, se o arquivo passado como parâmetro existe(é aí que a classe System.IO entra em ação), caso ele não exista, criamos o elemento"Dados" e, através do método Save, criamos o arquivo. Depois disso, começamos a passar para o a instância do XElement (objXElement) os dados que futuramente ele gravará no arquivo físico.

Primeiro, criamos o Elemento "Aluno", depois, começamos a setar "subelementos" deste Elemento, utilizando o método SetElementValue, que recebe como parâmetro o nome do elemento que será criado e o valor que este elemento terá. No nosso exemplo, temos Nome, Turma e Curso, que recebem os valores de alguns TextBox que foram colocados na página. Mas, você poderia criar quantos quisesse, de acordo com a sua necessidade e preencher os elementos com dados oriundos da sua base de dados, por exemplo.


Neste momento já podemos ver, através do DEBUG do Visual Studio, o corpo do que será adicionado ao arquivo XML.


Imagem 3: Os dados que serão gravados, ainda em memória

Depois disso, criamos uma instância do XElement (objSalvarDados), para carregar o conteúdo que já existe no arquivo, e através do método ADD, adicionarmos o objeto que está com os dados em memória(objXElement). E depois, através do SAVE, no objSalvarDados, salvarmos as alterações.

Ótimo, agora que já temos dados dentro do arquivo, podemos consultá-los.
*A imagem abaixo foi cortada pelo layout do blog, para visualizá-la por completo, clique aqui

Imagem 4: Método de Consulta de Dados

O método de consulta de dados tem dois parâmetros: O caminho do arquivo XML onde buscaremos as informações e quais informações buscaremos.
Iniciamos o nosso método de consulta atribuindo à nossa instância global do XElement, os dados que estão dentro do arquivos que salvamos há pouco, através do método LOAD, que recebe como parâmetro, o parâmetro do nosso método de consulta (caminho).
Depois, criamos a variável anônima dados, que irá receber os dados que serão pesquisados.
Atribuímos ao "a" o conteúdo do elemento "Aluno" do nosso objeto XElement e a partir daí, trabalharemos apenas com o "a". Utilizamos o where, para selecionar apenas os alunos cujos nomes se aproximem do parâmetro do método(NomeAluno), o que é semelhante ao LIKE que utilizamos na linguagem SQL. Depois passamos o order by e escolhemos por qual elemento será selecionado. A particularidade do LINQ to XML é que temos que passar um Element para ordenar, no resto, a sintaxe é igual à do LINQ to SQL. Depois, temos o Select New, onde criamos as "colunas" da nossa consulta. No nosso caso temos três: xNome, xCurso, xTurma. E, por fim, atribuímos a nossa variável dados ao DataSource do GridView e damos o DataBind, para que ele possa carregar esses dados. Utilizamos o GridView como exemplo, mas poderia ser feito com outros controles que também tem a propriedade DataSource.

Utilizando os métodos na prática.

Inserção:


Busca



Você pode baixar os fontes utilizados neste artigo clicando aqui.

Espero que tenha sido tão aproveitável para você, quanto foi pra mim.

Um forte abraço...

Atenciosamente,

Ítalo Chesley

--> Marcadores:

Estamos concebendo idéias sobre o Grupo de Estudo que vamos iniciar na Univale - Universidade Vale do Rio Doce.

O principal objetivo é compartilhar conhecimentos de Desenvolvimento, utilizando o .NET Framework, tendo como ferramenta o Visual Studio Team System 2008/2010 e, como banco de dados, a princípio, SQL Server 2008.

O grupo de estudo será muito bom para:
Quem não conhece nada sobre a plataforma, mas quer muito aprender;
Quem já entende e quer aprender mais;
Quem quer conhecer mais sobre as mais novas tendências na área de Desenvolvimento


Janny Gomes , Gesilene Martins e eu fizemos um podcast para os que têm interesse em participar, possam ir se informando sobre o que será abordado e de que forma será feito.Você pode ouví-lo abaixo:



Caso queira baixá-lo, basta clicar AQUI.

Um forte abraço senhores...

E vamos estudar!!

Um forte abraço!
Atenciosamente,

Ítalo Chesley

--> Marcadores:

Senhores, essa semana foi liberada pela Microsoft uma versão do Visual Studio 2010 RC1.

Clique aqui para baixá-la.

A previsão para lançamento Oficial do Visual Studio 2010 é 12 de Abril...

Aguardemos ansiosos!!

Um forte abraço!

Atenciosamente

Ítalo Chesley

-->

Boas noites senhores, tudo bem?


O Campus Party é um dos maiores eventos de tecnologia do mundo. É onde há oportunidade para quem quer conhecer pessoas novas, tecnologias e assistir a ótimas palestras. Para quem ainda não sabe, acontecerá dos dias 25 a 31 de Janeiro deste ano e teremos muitas atrações interessantíssimas, entre elas, encontra-se Kevin Mitnick, autor dos livros A arte de Enganar e A arte de Invadir. A palestra terá como tema "A arte de Enganar".

O evento será transmitido pela internet, através do http://tv.campus-party.org/, para quem quiser acompanhar, só clicar aí.

Os links disponibilizados levam, respectivamente à página do evento e aos downloadas dos livros.

Toda a agenda do evento encontra-se em: http://www.campus-party.com.br/agenda.html

Não percam a oportunidade de acompanhar o evento, queridos.

Em breve, se Deus quiser, vou compartilhar algumas idéias aqui sobre a Segurança ASP.NET e utilização do LINQ TO XML, que estou estudando esses dias. Talvez eu até arrisque postar uns exemplos aqui, para quem estiver estudando e interessado em aprender.

Um forte abraço querido leitor.

Atencioamente,

Ítalo Chesley

--> Marcadores:

Boa tardes senhores, tudo tranquilo?

Antes de começar o texto da postagem efetivamente, gostaria de desejá-lo um feliz 2010, que possamos aprender muito e sejamos continuamente melhores em tudo o que fizermos.

Vamos lá...

Assim como eu, há muitas pessoas que no início de seus estudos da plataforma .NET ficam meio sem saber o que fazer e nem sempre há alguém disposto a dar um curso de .NET .
Na última postagem, expus alguns conceitos que aprendi no curso de .NET, o que já serve também para você que está iniciando nos estudos, como um ponto de partida.

Sugiro que você faça o Programa Desenvolvedor 5 Estrelas da Microsoft, lá você aprenderá muitos conceitos que talvez nunca tenha ouvido ou possa ouvir novamente para consolidar ainda mais o conhecimento que você já tem

Essa semana, iniciei um projeto meu, utilizando os conhecimentos que me foram passados no curso rápido, e estou aqui para compartilhar com você alguns textos que li, durante esse início de desenvolvimento e poderão ser de muita valia para você também.

A princípio, para colocar em prática o que é dito nos textos, eu tinha instalado na minha máquina o Visual Studio Team System 2008 e Sql Server 2008, mas no decorrer do tempo, surgirão novas necessidades.

Primeiramente, fiz a Master Page da minha página, de onde posso fazer a Herança Visual de diversas páginas, ganhando assim, bastante tempo. No seguinte link, o texto de Ramon Durães poderá te auxiliar muito no estudo: http://www.linhadecodigo.com.br/Artigo.aspx?id=808

Depois, fiz o Site Map, que serve para auxiliar-nos com os Menus da nossa aplicação. No seguinte link, você pode ler e aprender a utilizar o Site Map: http://www.linhadecodigo.com.br/Artigo.aspx?id=1521

Essa semana também fiz um exemplo sobre como buscar endereços através do CEP, utilizando um WebService gratuito disponibilizado na internet. Fiz o exemplo em C#, mas no link a seguir, você poderá encontrá-lo em várias linguagens:  http://www.republicavirtual.com.br/busca_de_cep/DotNet/#dotnet

No próximo post, vou falar sobre a segurança ASP.NET e passar alguns links muito bons para que os senhores possam ler também.

Um abração

E, bons estudos!

Atenciosamente

Ítalo Chesley

--> Marcadores:

Boa noite senhores, tudo bem com vocês?

Durante a semana de 14 a 18 de dezembro, tive uma rica oportunidade de obter alguns conhecimentos num curso rápido de .Net, ministrado pela Janynne, que gentilmente, tem doado seu tempo para me esclarecer algumas dúvidas com a programação em C#, na qual estou iniciando ainda.
Resumirei aqui, para vocês, algumas coisas que vimos neste curso, e os conceitos do que vimos:

Primeira Aula:
Tivemos um imprevisto, o que é de lei, na configuração dos notebooks, apenas um dos colegas já tinha conseguido configurar o notebook com o Visual Studio 2008 e o SQL Server. Nossa instrutora teve muita paciência e nos auxiliou: confesso que só consegui terminar de configurar meu note na terça a tarde, com ajuda da Janynne, que trabalha no mesmo setor onde eu faço estágio.



Segunda Aula:
Aprendemos sobre a Segurança do Asp.Net. Criamos, através de um utilitário do próprio Asp.Net, as tabelas, views e stored procedures necessárias para que o Asp.Net possa fazer a segurança da nossa aplicação. Criamos algumas roles, alguns usuários e fizemos os testes inerentes à segurança oferecida, coisa muito boa, que nos auxiliar na construção da aplicação e agiliza o nosso processo. Conhecemos um pouco do SiteMap, que nos permite criar os Menus da nossa página, o que também agiliza o Desenvolvimento das aplicações.


Terceira Aula:
Conhecemos o fabuloso LINQTOSQL. Esse recurso é maravilhoso e está disponível a partir do NetFrameWork 3.5. A partir dele, pudemos criar todas as classes referentes às tabelas do nosso banco de dados, com apenas alguns cliques. Ele facilita e padroniza a programação, fazendo com que ganhemos tempo e, assim, produtividade no desenvolvimento dos nossos sistemas. Fizemos um pequeno cadastro, o que, sem dúvidas foi muito útil.

Quarta Aula:
Fizemos mais um cadastro utilizando o LINQ e aprendemos alguns componentes de validação e máscara. Os componentes de validação, nos auxiliam tanto a verificar se há campos obrigatórios não preenchidos, como a informar ao usuário que eles são obrigatórios e não estão preenchidos, o que no Delphi, eu faço na mão, verificando campo por campo e colocando o foco e exibindo, separadamente, a informação para o usuário de que aquele campo está vazio e não pode ficar assim.

Quinta Aula:
Aprendi sobre o UserControl e Relatório. Além de tirar mais algumas dúvidas inerentes a cadastros e relacionamentos de tabelas, o que ainda não me acostumei a fazer no C#, aprendi sobre o UserControl, recurso que nos permite criar uma espécie de componente, juntando vários outros componentes, o que poderá ser usado em todo o projeto, o que adianta muito a nossa vida para não ter que fazer várias vezes a mesma coisa. Aprendemos também sobre View, StoredProcedure e Data Set tipado, o que eu estava muito curioso para aprender, e, agora, colocar em prática. Criamos um relatório, utilizando, além do DataSet tipado um Report, recurso que nos permite criar o layout do relatório desejado,  trazendo os campos das respectivas Storeds Procedures, e diagramando ao gosto do usuário, com cabeçalho e rodapé, de forma muito fácil. A partir daí, basta apenas colocar um componente chamado MicrosoftReportViewer que será ligado ao report, que será ligado ao DataSet tipado, que trará as informações que você definiu na sua View e Stored Procedure, um processo interessantíssimo!

Sem dúvidas, este curso que nos foi dado, foi a prova viva de que a tecnologia deve ser muito mais para compartilhar do que apenas manter o conhecimento para si próprio.
Espero que tenhamos outras oportunidades de compartilhar conhecimentos tão importantes e interessantes para a nossa vida profissional e agradeço à nossa instrutora Janynne.

Um forte abraço e obrigado por ler essa postagem

Atenciosamente

Ítalo Chesley Gomes da Silva

--> Marcadores: