Nova versão do VS 2010 e NET Framework 4.0
Prepare-se para o Visual Studio 2010 (Codenome: Rosário) e o .NET Framework 4.0, eles já estão em desenvolvimento, conforme anúncio da Microsoft feito em setembro de 2008. Confira em: http://www.microsoft.com/presspass/press/2008/sep08/09-29VS10PR.mspx
Segundo o texto, a nova versão está focada em 5 áreas :
- Condução da nova geração da plataforma;
- Estimular a criatividade do desenvolvedor;
- Habilitar tendências emergentes;
- Avançar e permitir o progresso de aplicações departamentais;
- Democratizar o gerenciamento do ciclo de vida da aplicação (Application Life-Cycle Management – ALM)
Como ainda é muito cedo para fazer considerações vamos aguardar…
Novo controle Microsoft Chart Control
A Microsoft disponibilizou um novo controle gratuito para a criação de gráficos: o Microsoft Chart Control.
Este novo controle está disponível para aplicações Windows Forms e Web (ASP.NET) na plataforma .Net Framework 3.5.
Possui diversas novas funcionalidades e estão disponíveis mais de 200 exemplos para ASP.NET e Windows Forms. Em breve pretendo publicar um artigo mostrando como usar o componente.
Veja aqui :
Microsoft Chart Controls (Microsoft .NET Framework 3.5)
Microsoft Chart Controls Add-on para Microsoft Visual Studio 2008
Microsoft Chart Controls – Exemplos
Microsoft Chart Controls – Documentação
Microsoft Chart Controls – Forum Oficial
Livro grátis sobre SQL Server 2008
A Microsoft Press disponibilizou gratuitamente (após registro) o livro em formato PDF “Introducing Microsoft SQL Server 2008“.
O livro está disponível no seguinte endereço: http://csna01.libredigital.com/?urss1q2we6
E durante este ano de 2009 o que deverá estar em destaque?
Vejamos…
SilverLight, MVC, ADO .NET Entity Framework, Mapeamento Objeto relacional, ADO .NET Data Services, Cloud Computing, WPF, LINQ, Web Services, XML, Testes Unitários, Arquitetura de software, Desenvolvimento em Camadas.
Muitos conceitos relacionados com as siglas citadas acima não são novos, mas começaram a ganhar mais destaque de uns dois anos para cá e estarão na boca dos desenvolvedores.
O jeito é se atualizar para não ficar para trás; durante o ano estarei publicando artigos relacionados com os itens citados.
Abordando o ADO .NET Entity Framework
Para começar vou falar um pouco sobre o ADO .NET Entity Framework pois ele veio sofrendo alterações até o lançamento do service pack 1 (. Aliás você deve atualizar o seu Visual Studio e versões Express com o service pack 1 disponível em: http://www.microsoft.com/downloads/details.aspx?FamilyId=FBEE1648-7106-44A7-9649-6D9F6D58056E&displaylang=en e http://www.microsoft.com/eXPress/download/)
A proposta do Entity Framework é ser uma ferramenta de mapeamento objeto relacional (vide NHibernate – VB .NET – Usando o NHibernate).
Vejamos como ele funciona:
Abra o Visual Studio 2008 (com service pack 1 atualizado) e crie uma nova solução em branco com o nome de DemoEF;
Agora vamos criar um novo projeto do tipo Class Library dentro desta solução usando a linguagem Visual Basic;
Clique com o botão direito do mouse e selecione Add New Project e selecione as opções conforme a figura abaixo informando o nome do projeto como : demoEF.ModeloEF;
A seguir clique sobre o projeto criado com o botão direito do mouse e selecione Add -> New Item;
Na lista Categories selecione o item Data e marque o template : ADO .NET Entity Data Model informando o nome: Northwind.edmx pois vamos usar o banco de dados Northwind.mdf;
Neste momento o assistente vai lhe apresentar a seguinte janela:
Aqui temos duas opções :
- Generate from database – O modelo será gerado a partir de um banco de dados existente; cria o modelo de entidades baseado na estrutura do banco de dados;
- Empty model – O modelo será criado vazio; neste caso teremos um modelo de entidades vazio baseado nas regras OOP e na sequência será criada a estrutura do banco de dados;
Vamos selecionar a primeira opção e clicar no botão Next>;
Na janela – Choose Your Data Connection – clique em New Connection para escolher uma nova conexão.
A seguir você pode selecionar uma fonte de dados dentre as opções oferecidas; selecione Microsoft SQL Server e clique no botão Continue.
[/img]
Informe o nome do seu Servidor SQL Server e selecione o banco de dados Northwind.mdf da lista de banco de dados apresentada e clique em OK.
Ao final você deverá obter o seguinte resultado:
Clique no botão Next> e será apresentada a janela abaixo onde devemos selecionar as tabelas do banco de dados que serão mapeados no modelo.
Vamos selecionar as tabelas Products e Categories e clique no botão Finish (poderíamos ter escolhido também views ou stored procedures).
Ao término desta ação para criação do modelo será apresentada a janela abaixo:
- No centro da janela temos o diagrama de classes que representa o modelo de entidades que foi criado a partir das tabelas Products e Categories.
- Olhando atentamente a entidade Products você vai notar que não temos a propriedade CategoryID que existe na tabela Products.
- Observe que temos a Navigation Properties Categories que serve como uma referência ao objeto da classe Categories.
- Na parte inferior temos a janela de mapeamento onde você pode verificar que cada propriedade da entidade selecionada aponta para uma coluna da respectiva tabela do banco de dados.
- No canto direito superior, a janela Model Browser dá uma visão de todos os itens do modelo; (Observe o modelo Store onde estão os objetos do banco de dados usados no modelo).
Pronto, o mapeamento objeto relacional já foi feito e o modelo já esta criado. Agora veremos como usar este modelo.
Vamos criar um novo projeto na solução usando o template ASP .NET Web Application usando a linguagem Visual Basic com o nome demoEF.WebEF.
No menu File selecione Add -> New Project.
A seguir selecione as opções conforme a figura abaixo:
Após criar o novo projeto, a primeira providência a ser tomada é adicionar uma referência ao projeto demoEF.ModeloEF.
Clique com o botão direito do mouse sobre o projeto demoEF.WebEF e selecione Add Reference.
Em seguida na janela Add Reference clique na aba Projects e selecione o projeto clicando em OK.
Para poder usar os recursos do ADO .NET Entity Framework você precisa incluir a referência a namespace System.Data.Entity.
Clique com o botão direito do mouse sobre o projeto demoEF.WebEF e selecione Add Reference.
Em seguida na janela Add Reference clique na aba .NET e selecione System.Data.Entity e clique em OK.
Agora só falta um ajuste final.
Você precisa configurar a string de conexão do arquivo web.config do projeto demoEF.WebEF que está vazia.
Para isso, copie a string de conexão do modelo no arquivo app.config do projeto demoEF.ModeloEF para o arquivo web.config do projeto demoEF.WebEF.
<connectionStrings>
<add name="NorthwindEntities" connectionString="metadata=res://*/Northwind.csdl|res://*/Northwind.ssdl|res://*/Northwind.msl;provider=System.Data.SqlClient;provider connection string="Data Source=MAC\SQLEXPRESS;Initial Catalog=Northwind;Integrated Security=True;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />
</connectionStrings>
Vamos criar uma interface bem simples usando o WebForm Default.aspx; selecione este arquivo e inclua um componente GridView (ID=gdvEF) e dois componentes Button (ID=btnCategorias e ID=bntProdutos) conforme a figura abaixo:
Defina a seguinte declaração de namespace no arquivo code-behind Default.aspx.vb:
Imports demoEF.ModeloEF
No evento Click do botão Categorias inclua o seguinte código:
No evento Click do botão Produtos insira o seguinte código:
Antes de executar clique com o botão direito do mouse sobre o projeto demoEF.WebEF e selecione a opção Set as Startup Project.
Executando o projeto, ao clicar no botão Categorias veremos todas a categorias sendo exibidas. Para exibir todos os produtos clique no botão Produtos.
Naturalmente você variar o seu código para exibir determinadas categorias e/ou produtos usando LINQ.
Dessa forma acabamos de usar o ADO .NET Entity Framework para efetuar o mapeamento objeto relacional usando as tabelas Products e Categories. Com isso não tivemos que nos preocupar com a definição de comandos SQL nem em como obter os dados através de datareaders, datasets ou datatables.
Pegue o projeto completo aqui: demoEF.zip
Eu sei é apenas .NET, mas eu gosto…
Referências:
ADO .NET Entity Framework – Usando LINQ to Entties
ASP .NET – Usando Dynamic Data com LINQ to SQL
VB .NET – LINQ to SQL – Criando entidades