Desenvolvimento - ASP. NET
ASP.NET 2.0 - Conhecendo o ObjectDataSource Control
Neste artigo conheceremos o ObjectDataSource, iremos criar uma classe que retornará um DataReader (fará um select na tabela) e iremos preencher o GridView com o resultado deste select.
por Fabio Galante MansNeste artigo conheceremos o ObjectDataSource, iremos criar uma classe que retornará um DataReader (fará um select na tabela) e iremos preencher o GridView com o resultado deste select.
Requisitos: Visual Web Developer 2005 - Beta 2 / Microsoft Sql Server
1. Abra o VWD 2005, clique em - File / New Web Site.
1.1 Em Templates selecione ASP.NET Web Site - (Figura 1)
1.2. Selecione a linguagem Visual C#.
1.3. Digite o nome do projeto como ObjectDataSource.
Figura 1 - Criar um novo Web Site com a linguagem Visual C#.
O VWD criará o arquivo Default.aspx. Nosso próximo passou será adicionar a classe no projeto.
2. Pressione no menu View e abra o Solution Explorer.
2.1. Clique com o botão direito do mouse em cima do projeto e clique em Add New Item. (Figura 2)
2.2. Em Templates selecione Class em name dite Autores.cs. (Figura 3)
2.3. Clicando em OK o VWD exibirá uma mensagem informando que você irá adicionar uma classe na aplicação, e que para ela ser consumida no seu projeto é necessário que ela esteja na pasta App_Code. Clique em Sim para criar a pasta. (Figura 4)
Figura 2 - Adicionar um novo item ao projeto
Figura 3 - Adicionar a classe Autores.cs ao projeto.
Figura 4 - Criação da pasta App_Code ao projeto.
Nosso próximo passo será construir a classe Autores.cs. Esta classe irá se conectar no servidor Sql Server (Figura 5 e 6) através da string de conexão, fazer um select na tabela authors e retornar o resultado.
Figura 5 - Banco pubs / tabela authors.
Figura 6 - Listagem da tabela authors.
3. Digite a classe autores conforme (Listagem 1)
(Listagem 1) - Classe Autores using System; using System.Data; using System.Data.SqlClient; /// <summary> /// Classe Autores /// </summary> public class Autores { //String de conexão string connString = "Server=localhost;Trusted_Connection=true;Database=Pubs"; //Método que retorna um DataReader public static SqlDataReader ObterAutores() { SqlConnection conn = new SqlConnection(connString); string sql = "SELECT * FROM authors"; SqlCommand cmd = new SqlCommand(selectString, conn); conn.Open(); SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection); return dr; } }
4. Em seguida clique no menu Build / Build Web Site (Figura 7) para compilar a aplicação, caso apareça algum erro reveja a Listagem 1
(Figura 7) - Menu Build
5. Abra o arquivo Default.aspx.
5.1. Na Toolbox em Data arraste o componente GridView para o arquivo. (Figura 8)
5.2. Abra o Task Manager clicando na seta do lado direito do GridView.
5.3. Em Choose Data Source clique em New data source. (Figura 9)
5.4. Em Chosse a Data Source Type selecione Object. No ID digite objDataSource. (Figura 10)
5.5. Ao clicar em OK a próxima tela do assistente será Chosse a Bussiness Object. Selecione a classe Autores e clique em Next. (Figura 11)
5.6. A próxima tela do assistente irá exibir os métodos da classe. Em nosso caso existe somente o método ObterAutores. Em SELECT / Choose a method selecione-o. (Figura 12)
5.7. Clique em Finish para concluir o assistente.
(Figura 8) - Componente GridView adicionado ao projeto.
(Figura 9) - Task Manager - Criação de um New Data Source.
(Figura 10) - Data Source Configuration Wizard.
(Figura 11) - Consumindo a classe Autores
(Figura 12) - Selecionando o método ObterAutores.
6. Formate o GridView com o scheme de sua preferência através do Task Manager (Figura 13)
(Figura 13) - Esquemas de configuração do GridView.
7. Concluindo iremos rodar a aplicação
7.1. Pressione CTRL+F5
7.2. Caso não ocorra nenhum erro o IE irá exibir os registros da tabela authors. (Figura 14)
(Figura 14) - GridView sendo exibido no IE.
No próximo artigo iremos criar os métodos para excluir e alterar os dados da tabela authors.
Abraços e até o próximo.
Fábio Galante Mans
fgamans@hotmail.com
Leia meu blog no The Spoke:
http://br.thespoke.net/MyBlog/Galante/MyBlog.aspx