Top Banner
Um passo em frente com o Entity Framework Henrry Pires http:// netponto.org
29

Um passo em frente com o Entity Framework - Henrry Pires

May 06, 2015

Download

Technology

Apresentação de Introdução ao Entity Framework na primeira reunião presencial da comunidade NetPonto
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Um passo em frente com o Entity Framework - Henrry Pires

Um passo em frente com o Entity Framework

Henrry Pires

http://netponto.org

Page 2: Um passo em frente com o Entity Framework - Henrry Pires

Henrry Pires8 anos de experiência profissional em TIHá 6 anos a programar na plataforma .NET

Page 3: Um passo em frente com o Entity Framework - Henrry Pires

Agenda

• O que é, e para que serve?• Porque precisamos da E. F.?• Como Funciona?• LINQ• Comparação NHibernate e E.F.• Entity Framework em acção

Page 4: Um passo em frente com o Entity Framework - Henrry Pires

O que é?

Page 5: Um passo em frente com o Entity Framework - Henrry Pires

O que é?• Abstração sobre o ADO .NET.

• Criação de modelos conceptuais.

• Queries LINQ e/ou E-SQL.

• Actualização automática dos dados.

• D.A.L.

Page 6: Um passo em frente com o Entity Framework - Henrry Pires

Exemplo de uma query LINQUsing NwEntities As New NORTHWNDEntities() Dim Products = NwEntities.Products Dim productsList = From p In Products _ Where p.UnitsInStock > 0 _ Select p.ProductID, p.ProductName,

p.UnitsInStock, p.UnitPrice _ Order By UnitsInStock dataGridViewProducts.DataSource = productsList.ToList()

End Using

Page 7: Um passo em frente com o Entity Framework - Henrry Pires

Estrutura da Entity Framework

Page 8: Um passo em frente com o Entity Framework - Henrry Pires

Entity Framework Metadata

Page 9: Um passo em frente com o Entity Framework - Henrry Pires

Entity Framework

Entity Framework

Page 10: Um passo em frente com o Entity Framework - Henrry Pires

Porque Precisamos do Entity Framework?

Page 11: Um passo em frente com o Entity Framework - Henrry Pires

Porque precisamos do E. F.?

• Como fazemos hoje

• Entidades e Objectos .NET

• DataContext

Page 12: Um passo em frente com o Entity Framework - Henrry Pires

Porque precisamos do E. F.?

Rapidez

Flexibilidade

Robustez

Page 13: Um passo em frente com o Entity Framework - Henrry Pires

Como Funciona?

??

?

Page 14: Um passo em frente com o Entity Framework - Henrry Pires

Entity FrameworkVisão Geral

demonstração

Page 15: Um passo em frente com o Entity Framework - Henrry Pires

Language Integrated QueryLINQ

Page 16: Um passo em frente com o Entity Framework - Henrry Pires

LINQ

Conclusões a tirar

• Flexibilidade• Fácil adaptação• Versatilidade• Grandes Potencialidades

Page 17: Um passo em frente com o Entity Framework - Henrry Pires

Entity Frameworkem Acção

demonstração

Page 18: Um passo em frente com o Entity Framework - Henrry Pires

Entity Framework em Acção

Pontos de Interesse1. Fácil2. Intuitivo3. Total integração com as ferramentas

habituais4. Rápido5. Eficiente

Page 19: Um passo em frente com o Entity Framework - Henrry Pires

Comparação rápida

NHibernatee

Entity Framework

Page 20: Um passo em frente com o Entity Framework - Henrry Pires

NHibernate • Cada entidade é mapeada através de um ficheiro

XML• Existem um ficheiro XML de configuração para o

NHibernate saber onde encontrar os outros ficheiros XML, quais as connection strings a serem usadas, entre outras

• Para aceder a BD é usado o ISession object

Page 21: Um passo em frente com o Entity Framework - Henrry Pires

NHibernate • Quatro maneiras diferentes de aceder aos dados

1. HQL - que é parecido a SQL só que faz queries sobre objectos e não sobre as tabelas

2. Criteria - uma maneira fluente de encadear chamadas a métodos, e especificar diferentes critérios para a formulação dos queries

3. Stored Procedures4. SQL syntax

Page 22: Um passo em frente com o Entity Framework - Henrry Pires

NHibernate • Ferramentas para o NHibernate– Fluente NHibernate - permite visualmente fazer

o mapeamento das entidades– LINQ–NHibernate Search - usando Lucene.NET permite

pesquisas de texto bastante rápidas• Lazy Loading

Page 23: Um passo em frente com o Entity Framework - Henrry Pires

Entity Framework• Mapeamento visual mais completo• Todas as parametrizações ficam guardadas

num único ficheiro com extensão .edmx• As próprias classes geradas têm relações

entre elas

Page 24: Um passo em frente com o Entity Framework - Henrry Pires

Entity Framework• Possibilidade de mapear Stored Procedures da

mesma maneira como se mapeia tabelas• Todos os acessos a Base de dados são

centralizados através duma instancia do Data Context

• Duas maneiras de aceder a Base de dados1. LINQ2. Stored Procedures

Page 25: Um passo em frente com o Entity Framework - Henrry Pires

Entity Framework"The EF was specifically structured to separate the

process of mapping queries/shaping results from building objects and tracking changes. This makes it easier to create a conceptual model … and then reuse that conceptual model for a number of other services besides just building objects. Long-term we are working to build EDM awareness into a variety of other Microsoft products...“

Danny Simmons Entity Framework Team

Page 26: Um passo em frente com o Entity Framework - Henrry Pires

ReferênciasBlog oficial da equipa do Entity Framework

– http://bit.ly/EntityFrameworkTeam

Vídeos sobre Entity Framework no Channel 9– http://bit.ly/EntityFrameworkChannel9

Fórum Entity Framework no MSDN Brasil– http://bit.ly/ForumEntityFrameworkMSDNBR

Novidades Entity Framework 4.0– http://bit.ly/NovidadesEntityFramework40

Page 27: Um passo em frente com o Entity Framework - Henrry Pires

Dúvidas?

Page 28: Um passo em frente com o Entity Framework - Henrry Pires

Patrocinador desta reunião

http://ciclo.pt