Operações CRUD com Entity Framework

No post “ADO.NET Entity Framework – Introdução + Exemplo prático” comentamos um pouco sobre a teoria do Entity Framework, demonstramos como criar o modelo conceitual (Entity Data Model – EDMX) e também como utilizá-lo através do Entity Data Source em aplicações sem escrita de código fonte, ou seja, montadas a partir dos assistentes do próprio Visual Studio.

Neste post demonstro como utilizar o Entity Framework, via codificação, para realizar operações CRUD em um exemplo didático que utiliza o Banco de Dados Northwind e as tabelas Region e Territories, já devidamente mapeadas (objeto relacional) no exemplo citado no parágrafo anterior (Acesse o post anterior antes de continuar neste).

Exemplos de métodos

1) Inclusão/Alteração


protected void btnGravar_Click(object sender, EventArgs e)
{
   //Criando o contexto de acordo com o Entity Data Model
   using (NorthwindEntities contexto = new NorthwindEntities())
   {
      try
      {
         Territories t;
         if (btnGravar.Text == "Gravar") //Se for um novo registro
            t = new Territories(); //Criamos um novo território
         else
            t = (from t1 in contexto.Territories where t1.TerritoryID == txtIdentificacao.Text select t1).First(); //Se não, recuperamos o território que será alterado

         //Adicionando ou alterando as informações do território
         t.RegionID = Convert.ToInt32(ddlRegiao.SelectedValue);
         t.TerritoryID = txtIdentificacao.Text.Trim();
         t.TerritoryDescription = txtDescricao.Text.Trim();

         if (btnGravar.Text == "Gravar") //Se for um novo registro, adicionamos ao contexto, senão apenas gravamos as alterações
            contexto.Territories.AddObject(t);

         //Nessário para confirmar as ações junto ao contexto
         contexto.SaveChanges();

         Mensagem("Operação realizada com sucesso.");
      }
      catch (Exception ex)
      {
         Mensagem("Erro: " + ex.Message);
      }
   }
}


2) Localização de Registros


protected void btnLocalizar_Click(object sender, EventArgs e)
{
   //Criando o contexto de acordo com o Entity Data Model
   using (NorthwindEntities contexto = new NorthwindEntities())
   {
      try
      {
         //Recuperando um determinado registro/objeto
         Territories t = (from t1 in contexto.Territories where t1.TerritoryID == txtIdentificacao.Text select t1).First();

         //Populando elementos de tela com os dados recuperados
         ddlRegiao.SelectedValue = t.RegionID.ToString();
         txtIdentificacao.Text = t.TerritoryID;
         txtDescricao.Text = t.TerritoryDescription;

         txtIdentificacao.ReadOnly = true;
         btnGravar.Text = "Alterar";
         btnExcluir.Enabled = true;
      }
      catch (Exception ex)
      {
         Mensagem("Erro: " + ex.Message);
      }
   }
}

3) Exclusão


protected void btnExcluir_Click(object sender, EventArgs e)
{
   //Criando o contexto de acordo com o Entity Data Model
   using (NorthwindEntities contexto = new NorthwindEntities())
   {
   try
      {
         //Recuperando um determinado registro/objeto
         Territories t = (from t1 in contexto.Territories where t1.TerritoryID == txtIdentificacao.Text select t1).First();

         //Excluindo o registro/objeto e salvando as alterações no contexto/BD
         contexto.Territories.DeleteObject(t);
         contexto.SaveChanges();

         Mensagem("Registro excluído.");
      }
      catch (Exception ex)
      {
         Mensagem("Erro: " + ex.Message);
      }
      finally
      {
         FormularioInicial();
      }
   }
}


Caso queira, clique aqui para fazer o download completo deste exemplo

Grande abraço,
Eduardo Henrique Rizo

Anúncios

Coordenador de Internet da Universidade do Oeste Paulista (Unoeste) e professor universitário de disciplinas relacionadas ao desenvolvimento de sistemas para Web, gerenciamento de servidores, serviços e redes.

Marcado com: , , , , , , ,
Publicado em ASP.NET, Desenvolvimento Web, Entity Framework, Microsoft
8 comentários em “Operações CRUD com Entity Framework
  1. […] Caso queira saber um pouco mais sobre o assunto, leia o post sobre operações CRUD com Entity Framework. […]

  2. leosaomz disse:

    Sensacional…poucas linhas de código e simples…vlw

  3. […] Posts relacionados: 1. ADO.NET Entity Framework – Introdução + Exemplo prático 2. Operações CRUD com Entity Framework […]

  4. […] LINQ e Entity Framework 2. Operações CRUD com Entity Framework 3. ADO.NET Entity Framework – Introdução + Exemplo […]

  5. […] LINQ, Entity Framework e Tipos Anônimos 2. LINQ e Entity Framework 3. Operações CRUD com Entity Framework 4. ADO.NET Entity Framework – Introdução + Exemplo […]

  6. Márcio disse:

    não gosto disso. Me faz perceber que programação é tão fácil quanto medicina… hahahahaha

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

Sorocaba e Região
Prestadora de serviços RIZZO GS - Sorocaba/SP

Serviços de limpeza, conservação, recepção, copa, portaria, vigia, zeladoria, jardim, elétrica, hidráulica, pintura, etc.

Contato: (15) 3357-4263 / (15) 3357-4502 - contato@rizzogs.com.br

Website: http://www.rizzogs.com.br

%d blogueiros gostam disto: