Bom dia pessoal, neste artigo irei mostrar como utilizar a DLL de acesso a dados genérica criada neste artigo:
http://aspneti.com/Criando+uma+DLL+de+acesso+a+dados+Generica+utilizando+o+namespac
e+System+Data+Comom+444,0.aspx
Crie um novo projeto Web do tipo ASP.NET Web Application com o Visual Studio 2010 com o nome TestGenericDB conforme imagem abaixo:
Clique na imagem para ampliar
Como muitos já devem saber o VS 2010 cria automaticamente um template de um site muito bom com duas páginas, uma Default.aspx e outra About.aspx.
Neste artigo iremos utilizar apenas a página Default.aspx. Primeiro vamos criar um banco de dados com apenas uma tabela bem simples, apenas para podermos executar os testes com a DLL criada no artigo
http://aspneti.com/Criando+uma+DLL+de+acesso+a+dados+Generica+utilizando+o+namespac
e+System+Data+Comom+444,0.aspx.
Clique com o botão direito do mouse em cima do projeto e adicione um novo item do tipo SQL Server Database e de o nome de GenericDB. Irá aparecer uma mensagem perguntando se você gostaria de adicionar o novo item na página App_Data. Clique em Sim.
Agora vamos criar uma tabela com o nome PESSOA. Para isso podemos utilizar o próprio VS na janela Server Explorer já irá aparecer a conexão com o banco GenericDB conforme você pode ver na figura abaixo:
Clique na imagem para ampliar
Clique com o botão direito em cima de Tables e depois em ADD New Table e crie uma tabela com a seguinte estrutura:
Clique na imagem para ampliar
Nesta primeira parte do artigo vou mostrar um comando Insert utilizando Stored Procedure.
Clique com o botão direito em cima de Stored Procedure e depois em Add New Stored
Procedure e digite o seguinte código:
CREATE PROCEDURE spSetPessoa
@NOME VARCHAR(50),
@ENDERECO VARCHAR(50),
@TELEFONE VARCHAR(50)
AS
INSERT INTO PESSOA (NOME, ENDERECO, TELEFONE) VALUES (@NOME, @ENDERECO,
@TELEFONE)
RETURN
Agora vamos acrescentar ao nosso projeto a DLL GenericDataBase. Crie uma pasta no projeto com o nome Assembly e adicione a DLL nesta pasta conforme imagem:
Clique na imagem para ampliar
Fazendo isso nós estamos apenas acrescentando a DLL ao projeto, mas ainda precisamos referenciá-la. Para isto basta clicar com o botão direito do mouse em cima de References e depois em Add Reference, na aba Browse selecione a DLL que acabamos de adicionar na pasta Assembly conforme imagem abaixo:
Clique na imagem para ampliar
Abra a página Default.aspx e digite o seguinte código dentro do BodyContent:
<h2>
Cadastro de Pessoas
</h2>
<br />
<table>
<tr>
<td>Nome:</td>
<td><asp:TextBox ID="txtNome" runat="server" /></td>
</tr>
<tr>
<td>Endereço:</td>
<td><asp:TextBox ID="txtEndereco" runat="server" /></td>
</tr>
<tr>
<td>Telefone:</td>
<td><asp:TextBox ID="txtTelefone" runat="server" /></td>
</tr>
<tr>
<td colspan="2">
<br />
<asp:Button ID="btnCadastrar" runat="server" Text="Cadastrar" />
<br />
<br />
<asp:Label ID="lblMSG" runat="server" />
</td>
</tr>
</table>
Vá para o Design e clique duas vezes no botão Cadastrar. E digite o seguinte código para este método:
/// <summary>
/// Método do botão cadastrar
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnCadastrar_Click(object sender, EventArgs e)
{
// Recebe os dados da tela
string nome = txtNome.Text;
string endereco = txtEndereco.Text;
string telefone = txtTelefone.Text;
// Cria Lista de Parâmetros
List<DbParameter> param = new List<DbParameter>();
// Adiciona os parâmetros da Stored Procedure
param.Add(GenericDB.criaParameter("@NOME", DbType.String, nome));
param.Add(GenericDB.criaParameter("@ENDERECO", DbType.String,
endereco));
param.Add(GenericDB.criaParameter("@TELEFONE", DbType.String,
telefone));
try
{
// Executa o comando
GenericDB.executeCommand("spSetPessoa",
CommandType.StoredProcedure, param, TypeCommand.ExecuteNonQuery);
// Exibe mensagem de sucesso
lblMSG.Text = "Cadastro Efetuado com Sucesso!";
}
catch (Exception ex)
{
// Exibe mensagem de erro
lblMSG.Text = ex.Message;
}
}
Não se esqueça de adicionar as seguintes namespace using System.Data.Common;
using GenericDataBase;
using System.Data;
Veja que eu crio a lista de parâmetros já utilizando o método criaParameter do framework passando o nome, tipo e valor do parâmetro. Depois chamo o método de execução passando o nome da procedure o tipo de comando, a lista de parâmetros e o comando ExecuteNonQuery que é utilizado para esse tipo de execução.
Antes de executar devemos acrescentar no Web.Config a string de conexão conforme o framework utiliza. Segue a string de conexão:
<connectionStrings>
<add name="ConnectionString" connectionString="Data
Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\GenericDB.mdf;Integrated
Security=True;User Instance=True" providerName="System.Data.SqlClient"/>
</connectionStrings>
Execute a aplicação e veja como ficou:
Clique na imagem para ampliar
Informe os dados e clique no botão cadastrar e se der tudo certo, a mensag em de sucesso irá aparecer conforme abaixo:
Clique na imagem para ampliar
Gostaria de lembrar que neste artigo é apenas um exemplo de como podemos utilizar a DLL GenericDataBase, tem várias melhorias que podem ser feitas para deixar um código mais seguro para desenvolvermos em meio profissional.
No próximo artigo irei mostrar como exibir os dados cadastrados utilizando a DLL GenericDataBase.
Até a próxima.