Clique aqui para ler todos os artigos desta edição
Boas Práticas
DAAB
Boas práticas de acesso a banco de dados no .NET
Este artigo discute |
Este artigo usa as seguintes tecnologias |
· Data Access Application Block; · Reflection; · Class Diagram; · Web.config. |
Visual Studio 2005, ASP.NET 2.0, C#, Enterprise Library, ADO.NET e SQL Server. |
Atualmente o .NET Framework fornece grande poder para acesso e manipulação de dados, facilitando muito as mais diversas operações. O responsável direto por esses recursos é o ADO.NET. Além dos recursos fornecidos por esse poderoso framework, a vida dos desenvolvedores no contexto de acesso a dados, pode ser ainda melhor.
Existem algumas iniciativas com o objetivo de gerar mais benefícios, uma delas é o Data Access Application Block. O DAAB faz parte de um conjunto de blocos desenvolvidos e hospedados no Microsoft Patterns & Practices Developer Center (msdn2.microsoft.com/en-us/practices/default.aspx).
O conjunto de blocos denominada Enterprise Libray está na versão 3.1. Todos os blocos da Enterprise Libray auxiliam os desenvolvedores a resolver desafios comuns no desenvolvimento de aplicações, além de disponibilizarem o código-fonte para download e customização.
As opções de blocos são:
· Caching Application Block;
· Cryptography Application Block;
· Data Access Application Block;
· Exception Handling Application Block;
· Logging Application Block;
· Policy Injection Application Block;
· Security Application Block;
· Validation Application Block.
Neste artigo apresentaremos em detalhes o Data Access Application Block. O DAAB, é um componente da Enterprise Library para reduzir a quantidade de código escrito para operações envolvendo banco de dados.
O DAAB também possibilita que a aplicação desenvolvida seja utilizada em todos os seguintes bancos:
· SQL Server, através da classe SqlDatabase;
· Oracle, utilizando a classe OracleDatabase;
· Bases de dados genéricas, através da classe GenericDataBase.
Faremos a apresentação do DAAB através de uma aplicação que executa os principais métodos nos cenários de aplicações envolvendo bases de dados. O banco de dados que utilizaremos será o Northwind, disponível no SQL Server.
Exemplo ADO.NET e DAAB
Para demonstrar alguns dos benefícios na utilização do DAAB, confira os exemplos das Listagens 1 e 2. Comparando a Listagem 1 e 2, percebemos claramente que a quantidade de código para executar operações utilizando o DAAB reduz consideravelmente.
Listagem 1. Retornar DataSet através de ADO.NET sem utilizar DAAB
SqlConnection connection = new SqlConnection(
"Data Source=(local);Initial Catalog=Northwind;" +
"Persist Security Info=True;User ID=sa;" +
"User Instance=False");
SqlCommand sqlCommand = new SqlCommand(
"select * from customers");
sqlCommand.CommandType = CommandType.Text;
SqlDataAdapter sqlDataAdapter = new SqlDataAdapter(
sqlCommand);
DataSet ds = new DataSet();
sqlDataAdapter.Fill(ds, "Customers");
GridView1.DataSource = ds;
GridView1.DataBind();
Listagem 2. Retornar DataSet através da DAAB
Database db = DatabaseFactory.CreateDatabase();
DbCommand dbCommand = db.GetSqlStringCommand(
"select * from customers");
GridView1.DataSource = db.ExecuteDataSet(dbCommand);
GridView1.DataBind();
Nota: O DAAB foi construído com o ADO.NET, ou seja, internamente seus métodos executam código das classes fundamentais do ADO.NET.
Data Access Application Block 3.0 / 3.1
Para iniciar o desenvolvimento da aplicação, é necessário ter em seu computador o DAAB, caso você não possua, o download pode ser realizado no seguinte endereço: msdn2.microsoft.com/en-us/library/aa480453.aspx, onde podemos fazer o download de todos os blocos da Enterprise Library (Figura 1).
Nota: A versão que usaremos neste artigo foi desenvolvida no .NET Framework 2.0, consequentemente para construir nossa aplicação é necessário utilizar o Visual Studio 2005. Caso deseje, você pode baixar uma versão para o .NET 1.1.
Figura 1. Download da Enterprise Library
Após realizar o download do arquivo, execute o instalador. Como citado anteriormente, a Enterprise Library fornece o código-fonte, e durante o setup será solicitada a pasta onde você deseja armazenar o código.
No final da instalação, devemos manter selecionada a opção Build Application Blocks. Após finalizar a instalação da aplicação, podemos iniciar a construção de nosso aplicativo. Para iniciar, vamos listar na Tabela 1 o resumo de algumas classes do DAAB.
Classe |
... |