Archive for December 2009

Livro Sobre Silverlight 3 em C#

Recentemente eu fiz o review de um livro da editora Apress que se chama “Pro Silverlight 3 in C#”. Este livro realmente me chamou atenção, pois ele tem uma leitura muito agradável e é cheio de exemplos, o que o torna “viciante”.

Você quer fazer tudo que tem no livro, pois o Silverlight por si só já é muito show, e um livro que ensina passo a passo melhor ainda.

Se você está interessado em aprender Silverlight #3, ver como tudo funciona e já sair escrevendo aplicações, é um execelente livro para começar, pois ele abrange desde o funcionamento do Silverlight, até ferramentas e controles utilizados nas aplicações. Realmente um excelente guia para desenvolvedores.

[]s,
Carlos.

Lendo uma Planilha do Excel com C#

Hoje em dia é muito comum recebermos dados em planilhas do Excel e ter que importar ou analisar estes dados em nossas aplicações.

Com a ajuda do .Net Framework esta tarefa fica muito fácil e vou demonstrar como você pode abrir um arquivo do Excel e executar um comando Select em uma planilha simplesmente usando Ado.Net.

Para começar, vamos mostrar como está a nossa planilha no Excel e quais as informações importantes para o nosso programa em .Net.

Nossa planilha tem estes dados:

image

Vejam que a planilha tem os títulos das colunas na primeira linha. Estes serão os nomes dos campos para o nosso comando Select, e também o nome da planilha, que é Sheet1, será o nome da nossa tabela.

Agora vamos criar um projeto do tipo Console no Visual Studio:

image

Obs: no meu exemplo estou usando o Visual Studio 2010, mas vocês podem usar o Visual Studio 2008 com .Net Framework 2.0 sem problemas.

Criada nossa solução, vamos agora escrever o código. Para acessar os dados na planilha, vamos usar o Ado.Net e DataSet, para ser mais fácil de entender, e sendo assim precisamos incluir os namespaces apropriados:


using
System.Data;
using

System.Data.OleDb;

 

Após isto, precisamos criar a conexão com a planilha, usando OleDB:


OleDbConnection
conexao = new OleDbConnection(@”Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:tempplanilha.xlsx;Extended Properties=’Excel 12.0 Xml;HDR=YES’;”);


Nesta conexão, usamos o provider Microsoft.ACE.OLEDB e indicamos o noem da planilha, bem como a versão do Excel.

Criaremos agora um Adapter para executar o comando Select, e também um DataSet para armazenar os dados da consulta:


OleDbDataAdapter
adapter = new OleDbDataAdapter(“select * from [Sheet1$]”, conexao);
DataSet ds = new DataSet();


Observem que o nome da planilha tem um símbolo ‘$’ ao final e está entre colchetes ‘[]’.

Agora vamos abrir a conexão, preencher o DataSet e exibir os dados da planilha:


try
{
   conexao.Open();

   adapter.Fill(ds);

   foreach (DataRow linha in ds.Tables[0].Rows)
   {
     Console.WriteLine(“Nome: {0} – Cargo: {1} – Salario: {2}”, linha[“nome”].ToString(),
                        linha[“cargo”].ToString(), linha[“salario”].ToString());
   }
}
catch (Exception ex)
{
   Console.WriteLine(“Erro ao acessar os dados: “ + ex.Message);
}
finally
{
   conexao.Close();

}

 

Entendendo o código, abrimos a conexão, preenchemos o DataSet com o método Fill() do Adapter e depois executamos um ForEach para exibir os dados. Fazemos também o tratamento de exceção caso ocorra algum erro.

Vocês devem ter percebido que é um código bastante simples, mas de grande ajuda.

[]s,
Carlos.

SkyDrive Explorer

Se você costuma usar o SkyDrive para armazenar informações e poder usar em qualquer lugar, vai gostar deste novo utilitário. O SkyDrive Explorer é um aplicativo que permite que você abra o SkyDrive no seu Windows Explorer e consigar ler e gravar arquivos como se fosse um drive do seu computador. Se você ainda não usa o SkyDrive, clique aqui e comece agora mesmo.

Primeiro você precisa baixar o utilitário clicando aqui.

Depois de baixar, execute o utilitário e coloque seu usuário e senha do SkyDrive:

image

Após isto ele já vai aparecer no seu Windows Explorer:

image

Agora, clicando no ícone, o SkyDrive será aberto como um drive no seu computador, mostrando os arquivos e pastas. Assim, é só copiar e gravar seus arquivos para ele.

[]s,
Carlos.