Atenção: esse artigo tem um vídeo complementar. Clique e assista!

De que se trata o artigo

O artigo apresenta o framework ASP.NET Dynamic Data, disponível para projetos em ASP.NET. O mesmo é um framework que permite que você desenvolva aplicações rapidamente e, personalize a interface gráfica, de acordo com a necessidade.

Em que situação o tema é útil

Quando for necessário criar aplicações web ou websites de forma rápida, baseando-se em um banco de dados com uma estrutura já definida, obtendo maior êxito na entrega do projeto e, ganhando facilidade em possíveis customizações.

ASP .NET Dynamic Data – Primeiros Passos

Neste artigo veremos o que é o ASP .NET Dynamic Data e como este framework pode nos beneficiar para o desenvolvimento de aplicações web. Veremos sua facilidade de uso, suas principais características, os seus componentes e sua configuração básica. Será apresentada a forma que o ASP .NET Dynamic Data monta os layouts das telas de uma aplicação e como define quais e como as informações devem ser apresentadas e validadas.

Quando falamos em aplicações web, temos várias opções para o desenvolvimento, com muitas características diferentes. O próprio .NET framework possui muitas opções em conjunto com o Visual Studio. Quando trabalhamos com ASP .NET, podemos utilizar o conceito de Web Forms, ASP .NET MVC ou ASP .NET Dynamic Data.

O ASP .NET Dynamic Data é um dos frameworks que compõem o Visual Studio, para criarmos aplicações web. Sua primeira versão foi distribuída juntamente com a extensão do .NET framework 3.5, que foi liberado em 2007 e logo após foi incorporado já no Service Pack 1 do .NET framework 3.5 em 2008. O principal objetivo deste modelo de desenvolvimento de aplicações, é permitir que o desenvolvedor crie projetos de aplicações web baseadas em um modelo de dados pré-definido. O modelo de dados irá orientar todo o projeto e, o ASP .NET Dynamic Data, se encarregará de criar (na sua utilização básica) todo o modelo CRUD para a aplicação.

Sua principal característica é a velocidade de desenvolvimento, já que permite ao desenvolvedor criar a aplicação com o mínimo ou nenhum código.

Basicamente, o ASP .NET Dynamic Data faz a leitura de um mapeamento de uma fonte de dados e, para cada tabela ou entidade encontrada neste mapeamento, ele cria páginas de listagens, edição, visualização e inclusão, ou seja, ele basicamente cria o modelo CRUD para nós de uma forma automática. Porém, se você criar um projeto de uma aplicação utilizando o ASP .NET Dynamic Data, não encontrará na Solution Explorer nenhuma página pronta. Isto porque inicialmente a aplicação não sabe qual a fonte de dados que você deseja utilizar e segundo, porque estas páginas são construídas em tempo de execução, conforme tabelas e dados das mesmas, considerando todas as customizações que o usuário desejar incluir no projeto.

Modelos de Aplicações

O ASP .NET Dynamic Data, possui dois templates de projeto no Visual Studio. Como ele trabalha sobre um modelo de dados definido, temos as opções de criar um novo projeto utilizando a tecnologia LINQ To SQL, na opção “ASP .NET Dynamic Data Linq To SQL Web Application”, a qual utiliza um framework OR/M específico para a utilização do banco de dados SQL Server, distribuída pela Microsoft ou então, utilizar o template para o Entity Framework, que é o OR/M oficial da Microsoft para qualquer fonte de dados, sendo que para esta, devemos selecionar a opção “ASP .NET Dynamic Data Entities Web Application.” As opções disponibilizadas no Visual Studio podem ser verificadas na Figura 1.

Nota do DevMan
LINQ To SQL é uma implementação da tecnologia Linq específica para converter uma consulta em linguagem de programação (C# ou VB. NET, por exemplo) em uma consulta SQL e, assim, permitir o mapeamento de tabelas de bancos de dados relacionais em classes chamadas de entidades. Desta forma, o desenvolvedor possui mais poder nas consultas em fontes de dados e pode utilizar a mesma tecnologia da aplicação para tratar os dados da mesma, ganhando código gerenciado. Atualmente o LINQ To SQL apenas funciona no SQL Server, devido aos fabricantes de SGDB’s (Servidores de Banco de Dados Relacionais) ainda não adotarem o padrão ANSI. O Entity Framework é o framework oficial da Microsoft para o mapeamento de fonte de dados. Em muitos quesitos supera o LINQ To SQL, principalmente na limitação de bancos de dados suportados, que podem ser qualquer banco que implemente um provider de dados com as especificações necessárias. Atualmente, vários bancos de dados já possuem tal implementação e, o Entity Framework, está cada vez mais forte. Ele é praticamente uma extensão da tecnologia de acesso a dados ADO .NET, que permite trabalhar com classes que representam as tabelas e relacionamentos de banco de dados.

Figura 1. Seleção de Template para o ASP .NET Dynamic Data

Basicamente os dois templates não diferem muito, exceto quanto ao tipo de acesso aos dados na fonte de dados. O padrão dos componentes criados pelo ASP .NET Dynamic Data é o mesmo para ambos os tipo de aplicações. Como já mencionei anteriormente, é necessário que exista um modelo de dados definido para que o ASP .NET Dynamic Data possa funcionar, mas isto não significa que temos que ter um banco de dados já criado. Podemos utilizar um banco de dados já criado, mas também podemos utilizar a geração de banco de dados a partir do Modelo, assim como fazemos normalmente em qualquer tipo de aplicação.

Independente se você decidir gerar um modelo a partir do banco de dados criado ou, criar um banco a partir de um novo modelo, o ASP.NET necessita de que todas as tabelas que sua aplicação queira controlar, sejam incluídas neste modelo e de que as colunas estejam formatadas corretamente quanto aos tipos de dados que serão utilizados, pois estes servirão de base para a definição das interfaces de apresentação da aplicação, que são geradas automaticamente.

Componentes do ASP .NET DynamicData

Quando criamos uma aplicação do tipo ASP .NET Dynamic Data, o Visual Studio cria uma série de componentes padrões para o nosso projeto. Dentre estes componentes, estão os chamados Templates do DynamicData. Possuímos templates de Páginas, templates de entidades, campos, filtros e templates customizados.

Estes templates que são utilizados para montar a página, conforme as tabelas do banco de dados e o tipo dos dados que estamos apresentando. Inicialmente eles estão incluídos na pasta DynamicData do nosso projeto, conforme podemos verificar na Figura 2.

Figura 2. Pasta DynamicData

PageTemplates

PageTemplates são páginas ASP .NET que definem o padrão de apresentação que o seu projeto poderá utilizar. Eles são responsáveis pelo Layout da sua aplicação conforme a ação que o projeto está realizando. Quando estamos visualizando uma página com a lista dos dados de uma tabela, por exemplo, poderemos estar utilizando o template List.aspx ou então o template ListDetails.aspx, dependendo de como nossa aplicação estiver configurada. Os PageTemplates estão localizados por padrão na pasta PageTemplates que está dentro da pasta DynamicData na Solution Explorer do projeto. Na ...

Quer ler esse conteúdo completo? Tenha acesso completo