Olá pessoal, neste artigo mostrarei o uso rápido e simples do DataSet Tipado em uma aplicação ASP.NET.

Faço este artigo com base na videoaula de Luiz Maia, do Portal Linha de Código, mediante autorização do mesmo. Acompanhem o passo-a-passo:

Para este exemplo, usei o banco de exemplo da Microsoft, Northwind. Para quem quiser baixá-lo, é só seguir as instruções neste link ou neste artigo.

Como o intuito deste artigo é demonstrar como usar o DataSet Tipado de maneira fácil e rápida, não entrarei em detalhes sobre os conceitos do mesmo. Quem quiser saber mais sobre o DataSet Tipado, pode conferir neste artigo.

Com o Northwind instalado em seu computador, abra o Visual Studio e crie uma nova aplicação Web.

Agora abra o Server Explorer e crie uma nova conexão como a imagem abaixo nos mostra:


Selecione seu servidor, escolha o banco Northwind, teste a conexão e dê OK.


Conexão criada, nosso próximo passo é criar um DataSet. Então, adicione um novo item com o template DataSet e dê o nome de dsPedidos, já que iremos utilizar a tabela de Pedidos. Irá aparecer a mensagem abaixo, perguntando se você deseja criar a pasta App_Code, clique em Sim e aguarde.


No DataSet, abra o Server Explorer, abra o banco Northwind e arraste as tabelas Orders e Order Details, para que fiquem da seguinte forma:


Como iremos usar uma consulta parametrizada, temos que criar uma nova query. Para isso, clique com o botão direito em cima de OrdersTableAdapter e clique em Add Query.

Clique em Next nas próximas duas telas, deixando selecionada a primeira opção em cada. A primeira significa que iremos usar instruções SQL e a segunda indica que nosso SELECT nos retornará uma ou mais linhas ou colunas.

Na próxima tela, deveremos alterar a instrução SQL para a de baixo:


Essa instrução terá um filtro que nos retornará os pedidos de acordo com a data do pedido, que será informado pelo usuário. Por isso que usamos o @OrderDate e não um valor fixo, já que indicamos que será uma consulta parametrizada.

Lembrando que, como estamos fazendo a consulta no SQL, usamos a arroba (@) para indicar que a consulta será parametrizada. Se fosse no Access, seria a interrogação (?).

Clique em Next. Na próxima tela, altere o nome dos métodos para estes: FillByOrderDate e GetDataByOrderDate.Clique em Next e Finish.

Irá aparecer a mensagem abaixo, dizendo que nossa query irá retornar dados diferentes do método FillData(). Dê Ok e aguarde.


Nossa instrução irá nos retornar alguns campos preenchidos e usará um filtro que nos retornará as datas dos pedidos acima da data que o usuário informar.

Agora abra a Default.aspx, no modo Design, e arraste um GridView, um TextBox e um Button, para que nossa página fique da seguinte forma:


Usei as seguintes propriedades para os controles: dgvPedidos para o ID do GridView, estilo de layout Classic, txtDataPedido para o ID do TextBox, btnBuscar para o ID do botão e Buscar para o texto do botão.

Agora dê um F7 para ir a página de códigos e crie o método do botão Buscar:

Antes disso dê um using no seu Table Adapter:

using dsPedidosTableAdapters;

Agora sim:

private void Buscar()

    {

        try

        {

            //crio uma variável do tipo DateTime, que recebe o valor digitado no TextBox

            DateTime data = Convert.ToDateTime(txtDataPedido.Text);

 

            //instancio meu TableAdapter que receberá o valor da variável data, criada acima

            OrdersTableAdapter order = new OrdersTableAdapter();

            order.GetDataByOrderDate(data);

 

            //o DataSource de meu GridView receberá o código acima. Finalizo com o DataBind

            dgvPedidos.DataSource = order.GetDataByOrderDate(data);

            dgvPedidos.DataBind();

        }

        catch (Exception ex)

        {

            throw new Exception(ex.Message.ToString());

        }

    }

O que fiz foi instanciar meu TableAdapter, que tem como parâmetro a variável data que criei acima, que receberá a data que será digitada pelo usuário, e linká-lo ao DataSource de meu GridView.

Volte ao modo Design, dê dois cliques no botão Buscar e chame o método que acabamos de criar.

protected void btnBuscar_Click(object sender, EventArgs e)

    {

        Buscar();

    }

Salve seu projeto e compile. Digite por exemplo 01/01/1995, clique no botão e veja o resultado:


Assim finalizo o artigo.

Para quem se interessar, disponibilizo o código fonte desse projeto aqui.

Créditos à Luiz Maia, que fez as videoaulas e ao Portal Linha de Código, por onde pude baixá-las (mediante assinatura), estudá-las e posteriormente fazer este artigo.

Quaisquer dúvidas, mandem emails para wellingtonbalbo@gmail.com ou deixem nos comentários deste artigo que responderei o mais rápido possível.

Até o próximo artigo!