Desenvolvimento - ASP. NET

Explorando o ASP.NET 3.5 Dynamic Data Controls

Já faz algum tempo que a Microsoft vem investindo em linguagens dinâmicas e agora com o lançamento do Service Pack 1 do .NET 3.5 foi disponibilizando dentro do ASP.NET um novo conjunto de controles conhecido como Dynamic Data Controls que tem objetivo de montar as telas para as ações básicas de qualquer CRUD (Create, Read, Update, Delete).

por Ramon Durães



O ASP.NET revolucionou o desenvolvimento de aplicações para web oferecendo uma plataforma robusta e altamente produtiva elevando o potencial dos desenvolvedores com excelente recursos como: GridView, DataControls, Validators , WebParts entre outros.

Ao logo dos anos outras necessidades foram surgindo no mercado como a criação de telas automáticas de cadastro conhecidas atualmente como Scaffold bastante populares com o Ruby on Rails. Já faz algum tempo que a Microsoft vem investindo em linguagens dinâmicas e agora com o lançamento  do Service Pack 1 do .NET 3.5 foi disponibilizando dentro do ASP.NET um novo conjunto de controles conhecido como Dynamic Data Controls que tem objetivo de montar as telas para as ações básicas de qualquer CRUD (Create, Read, Update, Delete).

Logo após instalar o Service Pack 1 do Visual Studio 2008 vai aparecer conforme apresentado na figura 01 mais um novo tipo de projeto web para o .NET 3.5 chamado de “Dynamic Data”

fig01.jpg
Figura 01 – Criando novo projeto “Dynamic Data Web Application”

Após criar seu novo projeto verifique nas referencias e vai verificar que ele traz as os novos namespaces System.Web.DynamicData e System.Web.DynamicData.Design.

Agora para dar continuidade ao nosso projeto de exemplo você precisa escolher uma base de dados. Para esse caso utilizaremos uma própria base do sqlExpress criada no próprio projeto conforme figura 02.

fig02.jpg
Figura 02 – Banco de dados de exemplo

Para otimizar mais ainda nosso projeto vamos criar um mapeamento baseado no LINQ to SQL para que o LINQ se encarregue de todas operações de acesso a dados. Adicione a seu projeto o arquivo LINQClientes.dbml que deve ser trazer o mapeamento para essa tabela Clientes conforme figura 03.

fig03.jpg
Figura 03 – Mapeamento do LINQ to SQL para tabela Clientes.

Agora que você já fez as configurações básicas do seu banco de dados já podemos configurar o Dynamic Data para utilizar o LINQ to SQL e gerar automaticamente as telas de manipulação dessa tabela. Vá ao global.asax e localize o método RegisterRoutes() e dentro do mesmo modifique a linha Model.RegisterContext adicionando o nome do contexto gerado pelo LINQ que para o nosso exemplo foi LINQClientesDataContext conforme figura 04 e alterando o valor de ScaffoldAllTables para true.

fig04.jpg
Figura 04 – Configurando Dynamic Data Controls

Feito essa simples configuração agora é só rodar sua aplicação e já testar diretamente no Internet Explorer para conferir sua primeira aplicação web dinâmica baseada no ASP.NET 3.5 conforme figura 05 a 08.

fig05.jpg
Figura 05 – Aplicação dinâmica usando ASP.NET 3.5

fig06.jpg
Figura 06 – Atalho para  inclusão de dados


fig07.jpg
Figura 07 – Tela para inclusão de dados


Figura 08 – Tela principal


Conforme você observou com apenas uma pequena configuração você já ganhou um sistema completo para inclusão e manipulação dos dados. Prepara-se para uma nova era no mundo de aplicações usando a plataforma ASP.NET 3.5 SP1.

Comente esse artigo e não esqueça de uma frase importante “Não tem que ser difícil”. Até a próxima!

Ramon Durães

Ramon Durães - Especialista em desenvolvimento de software e Microsoft Most Valuable Professional (MVP) em Visual Studio Team System. Realiza treinamentos de .NET Framework em empresas, consultoria em arquitetura de software e implantação de Visual Studio Team System. Palestrante nos principais eventos da Microsoft no Brasil (Tech-Ed 2005, Tech-Ed 2006, Tech-Ed 2007, Tech-Ed 2008, Tech-ED 2009), Microsoft Innovation Days 2007 (Salvador, Brasília, Recife, Goiânia, Natal, Maringá), Microsoft Innovation Days 2009 (Salvador) , Campus Party Brasil 2009 e eventos regionais relacionados a grupos de usuários e universidades. Conhecido autor de artigos para os principais portais de conteúdo e autor de 10 publicações eletrônicas em CD (Video-Aula) pela editora Linha de Código além dos livros "Desenvolvendo para web usando o Visual Studio 2008" e "Gerenciando projetos de software usando Visual Studio Team System" pela editora Brasport. Pode ser encontrado em seu blog http://www.ramonduraes.net e @ramonduraes no Twitter.