logo
  • Home
  • Acerca
  • Autores
  • Faq
  • Rede
  Twitter   Feed-me! RSS!

Criando uma aplicação WPF – Parte 3

Colocado por Alexandre Tadashi na(s) categoria(s): 1, 4, 6, AR, arte, blog, Blogs, botão, C#, class, classe, collection, CRUD, dados, DRE, Entity Framework, exemplo, for, framework, geo, Geral, Google, IE, if, image, int, interface, linq, mg, O, on, padrão, pt, RIA, Ria’s Geral, silverlight, state, string, TAT, Tecnologia, Tema, template, Tutoriais, Tutorial, UI, uint, update, visao, WPF, XP em 08 3rd, 2010 | Sem comentários

Nesta terceira parte do tutorial vou criar uma Interface e uma classe que servirão de apoio para a manipulação dos dados com o Entity Framework 4, a Interface eu vou chamar de IDAO.cs , e ela será implementada pela classe ContatoDAO.cs, que vai conter os métodos CRUD da aplicação.

O objetivo dessa série de tutoriais é apresentar uma forma simples de trabalhar com o Entity Framework 4 em um projeto em camadas com WPF, utilizando o padrão MVVM, existem diversas maneiras de criar uma aplicação WPF, neste tutorial simplifiquei alguns passos para que fique mais fácil para quem está começando com a tecnologia.

Na camada de dados da aplicação, adicione uma interface chamada IDAO, para isso, clique com o botão direito do mouse no projeto Contatos.Data e em Add – New Item, em Installed Templates, selecione Visual C# Items, clique em Interface, dê o nome de IDAO.cs e adicione ao projeto.

clique na foto para ampliar

Esta interface servirá de contrato para que a classe ContatoDAO.cs implemente todos os métodos CRUD .

using System;using System.Collections.Generic;using System.Linq;using System.Text;

namespace Contatos.Data{    public interface IDAO< T >    {        T Add(T pEntity);        void Delete(T pEntity);        void Update(T pEntity);        IQueryable GetAll();

    }}

Neste exemplo o método Add será responsável pela inclusão de um registro na base de dados, o método retornará a entidade adicionada na base, já setado com o Id do registro, os métodos Update e Delete, recebem o objeto, com o objetivo de atualizar e deletar respectivamente e o método GetAll retornará todos os registros na tabela Contato.

Vou adicionar agora a classe ContatoDAO.cs, para isso, clique com o botão direito do mouse no projeto Contatos.Data e em Add – New Item, em Installed Templates, selecione Visual C# Items, clique em Class, dê o nome de ContatoDAO.cs e adicione ao projeto.

 

 
A Primeira modificação que vou fazer no projeto é implementar a interface IDAO e passar a entidade Contato como T:

Em seguida vou criar uma instância do modelo do EntityFramework, o arquivo ModelContato.Context.cs contém o nome na string ContainerName, neste exemplo o nome da classe é ModelContatoContainer:

ModelContatoContainer model = new ModelContatoContainer();

Agora basta implementar as quatro operações CRUD conforme abaixo:
   

# region CRUD

        public T Add(T pEntity)        {            model.ContatoSet.AddObject(pEntity);            model.SaveChanges();            return pEntity;        }

        public void Delete(T pEntity)        {            model.ContatoSet.Attach(pEntity);            model.DeleteObject(pEntity);            model.SaveChanges();        }

        public void Update(T pEntity)        {            model.ContatoSet.Attach(pEntity);            model.ObjectStateManager.ChangeObjectState(pEntity,                               System.Data.EntityState.Modified);            model.SaveChanges();        }

        public IQueryable GetAll()        {            return model.CreateObjectSet();        }

# endregion

Uma visão geral da classe pode ser vista na figura abaixo:

Neste momento nosso projeto está com a seguinte estrutura:

continua…



Veja o post original no blog do autor aqui!  

Alexandre Tadashi

Escrito por Alexandre Tadashi @ http://alexandretadashi.net/
Saiba mais sobre o autor na sua pagina de perfil
Outros posts do autor:
» .net Magazine 80 - WebMatrix e Razor
» Silverlight Widget Map Stats
» Silverlight - Crie suas primeiras animações

Deixe um comentário



Spam Protection by WP-SpamFree

ACERCA

O que é o RedeRIA ?

O redeRIA não é nada mais que um agregador de feed's que disponibiliza o conteudo de varios blogs e autores ao redor do mundo RIA, actualmente agregamos mais de 2795 entradas vindas de 53 blogs especializados em ria’s, pelo que só fica a ganhar em assinar o feed ou seguir a comunidade no twitter.

Se acha que o seu blog ou um blog de um amigo é interessante e util para os leitores o redeRIA, faça a sua submissão aqui.

Feed: assine já
Twitter: siga-nos

GOOGLE

Votação


Deveria o RedeRia agregar conteúdo em inglês?
Ver Resultados

AUTORES


Eduardo KrausAlexandre TadashiBindableCognitiva SoluçõesDaniel LopesDaniel SchmitzDanielPedrinhaDClick TeamEbercomEdgard DavidsonElvis FernandesErko BrideeFabiel PrestesFábio Batista da SilvaFabio da SilvaFabriccio BernardesFelipe BorellaFlavia MoreiraGabriel VersalliniGabriela T. PerryIgor MusardoJanderson CardosoJoão AugustoJose Carlos FielKelps SousaLeonardo FrançaLucas MarçalLuis MessiasLuiz TarabalMario JuniorMário SantosMauro MartinsPablo SouzaPedro ClaudioreneRia BrazilriaPTRicardo CerqueiraRobson FernandesRodrigo Pereira FragaSaintBrSamuelFacchinelloSergio SouzaSilva DeveloperStefan HorochovecTech CaffeTecinforThiago BuenoVedVinícius SandimWillian ManoXAML Cast

PUBLICIDADE








Powered by Wordpress & msdevstudio.com