Desenvolvendo um aplicativo Web em C# .NET Parte 2


Esse é o segundo artigo de uma série onde desenvolveremos um aplicativo Web em C#.Net usando banco de dados MySQL, nessa etapa precisamos organizar os diretórios do projeto, criar a classe de mapeamento, e adicionar os arquivos dll referente ao Boleto.NET e o MySQL que serão detalhados no decorrer da implementação.

Antes de continuar, clique para baixar Boleto.NET.dllMySQL.dll.

Criando a classe Mapped

Abra o seu projeto Ecommerce, vá ao Solution Explorer, clique com o botão direito na solução, Add e clique em New Solution Folder, conforme a figura a seguir:



Dê o nome de App_code ao folder. 

Clique com o botão direito no App_code, vá em Add, e clique em New Item, conforme a figura a seguir:



A janela Add New Item será exibida, selecione Visual C# Class, dê o nome de Mapped.cs, e clique em Add.

A classe está criada, agora iremos criar os demais folders do projeto e adicionar os seus itens.

Criando a estrutura de pastas

Como no passo anterior, crie agora um folder com o nome BIN, clique com o botão direito, vá em Add e clique em Existing Item, conforme a figura a seguir:



Procure o arquivo Boleto.Net.dll que você baixou, e clique em Add. A dll será adicionada ao projeto, repita o procedimento e adicione o arquivo MySQL.dll ao projeto.

Muito bem, você já tem o folder App_code e BIN com seus respectivos arquivos adicionados, agora iremos criar os folders referentes as páginas do projeto.

Agora crie dois novos folders com os nomes Complemento e Paginas.

Dentro do folder Complemento, crie o folder Controles.

Dentro do folder Paginas, crie quatro novos folders com os nomes Categoria, CategoriaProduto, Produto e Usuario.

Dentro do folder Produto, crie o folder Foto.

Feito isso a sua estrutura de pastas está pronta, veja a figura a seguir como deve estar o seu solution explorer:



Agora dê dois cliques na classe Mapped.cs para podermos implementá-la. Copie o código a seguir:

 using System;  
 using System.Collections.Generic;  
 using System.Linq;  
 using System.Web;  
 using MySql.Data.MySqlClient; //MYSQL  
 using System.Data; //DATASET  
 using System.Configuration; //Web.config  
 namespace MiniCurso  
 {  
   /// <summary>  
   /// Summary description for Mapped  
   /// </summary>  
   public class Mapped  
   {  
     public enum conexao  
     {  
       ServerExplorer,  
       AppSettings  
     }  
     //Retorna uma conexao com oo BD Aberta  
     public static IDbConnection Connection(conexao conn)  
     {  
       MySqlConnection obj=null;  
       switch (conn)  
       {  
         case conexao.ServerExplorer:  
           obj = new MySqlConnection(ConfigurationManager.ConnectionStrings["minicursoConnectionString"].ConnectionString);  
           break;  
         case conexao.AppSettings:  
           obj = new MySqlConnection(ConfigurationManager.AppSettings["strConexao"]);  
           break;  
         default:  
           break;  
       }  
       obj.Open();  
       return obj;  
     }  
     //Criar um comando de excução no BD  
     public static IDbCommand Command(string query, IDbConnection conexao)  
     {  
       IDbCommand comm = conexao.CreateCommand();  
       comm.CommandText = query;  
       return comm;  
     }  
     //Criar comando para seleção (SELECT)  
     public static IDataAdapter Adapter(IDbCommand command)  
     {  
       IDbDataAdapter adap = new MySqlDataAdapter();  
       adap.SelectCommand = command;  
       return adap;  
     }  

     //Criar parametro para SQL  
     public static IDbDataParameter Parameter(string name, object value)  
     {  
       return new MySqlParameter(name, value);  
     }  

     //Criar parametro para SQL  
     public static IDbDataParameter Parameter(string name, object value, DbType type, ParameterDirection direction)  
     {  
       MySqlParameter p = new MySqlParameter();  
       p.ParameterName = name;  
       p.Value = value;  
       p.DbType = type;  
       p.Direction = direction;   
       return p;  
     }  
     public Mapped()  
     {  
       //  
       // TODO: Add constructor logic here  
       //  
     }  
   }  
 }  

Agora a classe está implementada, a estrutura do projeto também está pronta, o próximo passo é criar as páginas, e implementá-las. Até mais.

Tiago Sousa

Sou Desenvolvedor Web Full-Stack com ênfase em Java, atuando no mercado de TI há 15 anos. Ao longo da carreira, adquiri conhecimentos sólidos e abrangentes em diversas tecnologias.