ASP.NET 2.0 - Trabalhando com datasets tipados
Os datasets tipados podem ser usados de uma forma a agilizar o trabalho de desenvolvimento, além disto na versão 2.0 eles tiveram seu desempenho melhorado e muitos bugs foram consertados.
Neste artigo vou usar o Visual Web Developer para criar uma página que exibe dados de uma consulta parametrizada a partir de uma determinada data. O exemplo foi feito usando a tabela Orders do banco de dados Northwind.mdb mas pode ser repetido com um banco de dados SQL Server , Oracle , etc.
Para acompanhar o artigo você deverá ter instalado o Visual Web Developer 2005 (VWD2005) instalado (ele é grátis) e o banco de dados Northwind.mdb.
Criando um projeto e o DataSet tipado
Abra o VWD2005 e no menu File selecione a opção New Web Site informando o nome do projeto. Chamei o projeto do artigo de dsNet.
O seu projeto será criado no Solution Explorer e você verá uma página com o nome de default.aspx
Clique com o botão direito do mouse sobre o nome do projeto na janela Solution Explorer e selecione a opção Add New Item...
Na janela Add New item selecione a opção DataSet e informe o nome Northwind.xsd
O assistente irá ser acionado clique no botão Cancel para desativar o assistente pois vamos criar os datasets de outra forma.
Abra em seguida a janela DataBase Explorer e clique em Data Connections e selecione a opção Add Connection.
Na janela Add Connection informe a localização do banco de dados e o Data Source e clique no botão OK. A conexão deverá aparecer na janela DataBase Explorer
Na janela DataBase Explorer exiba as tabelas do banco de dados Northwind.mdb e arraste as tabelas Orders Details e Orders para a janela do descritor de datasets. Você deverá ver o esquema das tabelas e o relacionamento entre elas sendo exibido conforme a seguir.
Clique com o botão direito do mouse sobre OrdersTableAdapter e selecione Add Query para incluir uma nova consulta.
Selecione a opção Use Select Statements e clique no botão Next. A seguir selecione Select which returns rows e clique em Next. A seguir defina o comando SQL Select conforme a figura abaixo.
Esta instrução SQL seleciona alguns campos da tabela e usa o parâmetro OrderDate para filtrar os dados a partir de uma data informada. Como estou usando um banco de dados Access o parâmetro é representado pelo ? se estivesse usando o SQL Server a cláusula seria: WHERE (OrderDate > @OrderDate).
Clique no botão Next e informe o nomes para as consultas criadas como FillByOrderDate e GetDataByOrderDate.
Criamos um dataset tipado que esta pronto para ser usado. Vamos aproveitar a página default.aspx do projeto.
Selecione a página no modo Design e inclua um componente GridView, um Label , 3 TextBox e um Button conforme leiaute abaixo:
Agora vamos incluir no evento Click do botão de comando o seguinte código:
Primeiro acrescente a linha de código para importar os objetos TableAdapters:
Imports
NorthwindTableAdaptersA seguir inclua o código abaixo :
Protected
Sub Button1_Click(ByVal
sender As Object,
ByVal e As System.EventArgs)
Handles Button1.Click Dim ordersAdapter As OrdersTableAdapter = New OrdersTableAdapter() Dim orders As Northwind.OrdersDataTable = ordersAdapter.GetDataByOrderDate(New DateTime(txtAno.Text, txtMes.Text, txtDia.Text)) GridView1.DataSource = orders End Sub |
Este código cria uma instância de OrdersTableAdapter, a qual será usada para preencher a nossa DataTable. Note que o DataTable criado foi do tipo OrdersDataTable.
Para preencher este DataTable, chamamos o método GetDataByOrderDate() passando um valor referente a data a partir da qual desejamos filtrar os dados. (Note que a data esta no formato AAAA,MM,DD)
Executando o projeto teremos como resultado a página exibida a seguir para a data informada.
Pegue o projeto completo aqui : dsNet.zip
Bom estudo e até o próximo artigo ASP.NET...
José Carlos Macoratti