SlideShare uma empresa Scribd logo
1 de 16
Entity Framework 4.0,
Novas Funcionalidades
Caio Proiete

•   10 anos de experiência profissional em TI
•   Microsoft Most Valuable Professional
•   Microsoft Certified Trainer @ CICLO
•   Líder da Comunidade NetPonto
Entity Framework (Geral)

• Ferramenta de “O/RM” (Object-relational Mapping)
  da Microsoft - e não só!
• Permite executar acções CRUD com Tabelas, Stored
  Procedures e Views
• Permite Transações e controlo de Concorrência
• Desenvolvido para suportar diferentes bases de
  dados num mesmo projecto
• Vários providers disponíveis (SQL
  Server, Oracle, MySQL, DB2, etc...)
Entity Framework 1 -> .NET 3.5

• Principais Características
  • Geração do modelo a partir da base de dados
       • Herança, Agregação, Filtros
  •   Operações CRUD simplificadas
  •   Consultas via LINQ
  •   Suporte a diferentes bases de dados
  •   Query Language própria, independente de base
      de dados
Entity Framework 1 -> .NET 3.5

• Principais Limitações / Problemas
  •   Designer com recursos limitados
  •   Sem suporte a Model-first
  •   Sem suporte a Lazy Loading
  •   Sem suporte a objectos POCO
  •   Suporte a Stored Procedures limitado
  •   Código SQL gerado de difícil leitura
  •   Dificuldade para utilizar em projectos com N-
      camadas
Limitações ultrapassadas e mais novidades

Entity Framework 4.0
Entity Framework 4 -> .NET 4.0
•   Model-first development      •   Self-tracking entities
•   Automatic pluralization      •   SQL generation improvements
•   Foreign keys in models       •   More LINQ operator support
•   POCO class support           •   LINQ extensibility
•   Lazy loading                 •   ExecuteStoreQuery
•   T4 Code Generation           •   ExecuteStoreCommand
•   Template customization       •   SPROC import improvements
•   IObjectSet                   •   Model defined functions
•   Virtual SaveChanges          •   WPF designer integration
•   ObjectStateManager control   •   Code-Only development (Feature
                                     CTP)
Entity Framework 4 -> .NET 4.0

• Diferentes formas de trabalhar
  • Database-first
     • Comece pela base de dados e crie o modelo
       conceptual a partir deste
  • Model-first
     • Comece pelo modelo conceptual e crie a base de
       dados a partir deste
  • Code Only*
     • Modelo conceptual e mapping totalmente via código
DB    Modelo   Código




Database-first

Demo
DB


              Modelo


                       Código




Model-first

Demo
DB


              Modelo


                       Código




Suporte POCO / T4

Demo
Resumo

• Diversas novidades no Entity Framework 4
  • Limitações da versão 1.0 ultrapassadas
  • Diferentes formas de trabalhar
  • Suporte a POCO e geração de código com
    templates T4


• E muito mais...
Q&A
A sua opinião é importante!
Complete o questionário de
avaliação e devolva-o à saida.
Entity Framework 4.0 Novas Funcionalidades e Formas de Trabalho
Entity Framework 4.0 Novas Funcionalidades e Formas de Trabalho

Mais conteúdo relacionado

Semelhante a Entity Framework 4.0 Novas Funcionalidades e Formas de Trabalho

Principais novidades do Entity Framework 5.0
Principais novidades do Entity Framework 5.0Principais novidades do Entity Framework 5.0
Principais novidades do Entity Framework 5.0Fernando Henrique
 
TDC2016SP - O que há de novo no Entity Framework Core 1.0
TDC2016SP - O que há de novo no Entity Framework Core 1.0TDC2016SP - O que há de novo no Entity Framework Core 1.0
TDC2016SP - O que há de novo no Entity Framework Core 1.0tdc-globalcode
 
Entity Framework 7.0 a.k.a Entity Core 1.0
Entity Framework 7.0 a.k.a Entity Core 1.0Entity Framework 7.0 a.k.a Entity Core 1.0
Entity Framework 7.0 a.k.a Entity Core 1.0Caliel Costa
 
Entity Framework 4
Entity Framework 4Entity Framework 4
Entity Framework 4CDS
 
Deep Dive sobre Entity Framework
Deep Dive sobre Entity FrameworkDeep Dive sobre Entity Framework
Deep Dive sobre Entity FrameworkLuciano Condé
 
Desenvolvimento Web com CakePHP
Desenvolvimento Web com CakePHPDesenvolvimento Web com CakePHP
Desenvolvimento Web com CakePHPSérgio Vilar
 
TDC2016POA | Trilha .NET - .NET Entity Core 1.0
TDC2016POA | Trilha .NET - .NET Entity Core 1.0TDC2016POA | Trilha .NET - .NET Entity Core 1.0
TDC2016POA | Trilha .NET - .NET Entity Core 1.0tdc-globalcode
 
DotNet Framework e Orientação a Objetos 1 - Introdução
DotNet Framework e Orientação a Objetos 1 - IntroduçãoDotNet Framework e Orientação a Objetos 1 - Introdução
DotNet Framework e Orientação a Objetos 1 - IntroduçãoLorival Smolski Chapuis
 
Diapositivos práticos - Integração de Sistemas.pdf
Diapositivos práticos - Integração de Sistemas.pdfDiapositivos práticos - Integração de Sistemas.pdf
Diapositivos práticos - Integração de Sistemas.pdfJ0071
 
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone AppsComo deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone AppsComunidade NetPonto
 
Slide Aula - Curso CakePHP
Slide Aula - Curso CakePHPSlide Aula - Curso CakePHP
Slide Aula - Curso CakePHPRangel Javier
 
Tecnologias Microsoft em Linux: .NET Core, SQL Server e Visual Studio Code - ...
Tecnologias Microsoft em Linux: .NET Core, SQL Server e Visual Studio Code - ...Tecnologias Microsoft em Linux: .NET Core, SQL Server e Visual Studio Code - ...
Tecnologias Microsoft em Linux: .NET Core, SQL Server e Visual Studio Code - ...Renato Groff
 
Web components para o seu design system
Web components para o seu design systemWeb components para o seu design system
Web components para o seu design systemNicole Oliveira
 
Drupal 7 - Nova Versão para Novos Desafios
Drupal 7 - Nova Versão para Novos DesafiosDrupal 7 - Nova Versão para Novos Desafios
Drupal 7 - Nova Versão para Novos DesafiosPaulino Michelazzo
 
CDI Extensions e DeltaSpike
CDI Extensions e DeltaSpikeCDI Extensions e DeltaSpike
CDI Extensions e DeltaSpikeRafael Benevides
 
Python - Programando em alto nível
Python - Programando em alto nívelPython - Programando em alto nível
Python - Programando em alto nívelIgor Sobreira
 

Semelhante a Entity Framework 4.0 Novas Funcionalidades e Formas de Trabalho (20)

Principais novidades do Entity Framework 5.0
Principais novidades do Entity Framework 5.0Principais novidades do Entity Framework 5.0
Principais novidades do Entity Framework 5.0
 
TDC2016SP - O que há de novo no Entity Framework Core 1.0
TDC2016SP - O que há de novo no Entity Framework Core 1.0TDC2016SP - O que há de novo no Entity Framework Core 1.0
TDC2016SP - O que há de novo no Entity Framework Core 1.0
 
Entity Framework 7.0 a.k.a Entity Core 1.0
Entity Framework 7.0 a.k.a Entity Core 1.0Entity Framework 7.0 a.k.a Entity Core 1.0
Entity Framework 7.0 a.k.a Entity Core 1.0
 
ORM e EF
ORM e EFORM e EF
ORM e EF
 
Entity Framework 4
Entity Framework 4Entity Framework 4
Entity Framework 4
 
Deep Dive sobre Entity Framework
Deep Dive sobre Entity FrameworkDeep Dive sobre Entity Framework
Deep Dive sobre Entity Framework
 
Desenvolvimento Web com CakePHP
Desenvolvimento Web com CakePHPDesenvolvimento Web com CakePHP
Desenvolvimento Web com CakePHP
 
TDC2016POA | Trilha .NET - .NET Entity Core 1.0
TDC2016POA | Trilha .NET - .NET Entity Core 1.0TDC2016POA | Trilha .NET - .NET Entity Core 1.0
TDC2016POA | Trilha .NET - .NET Entity Core 1.0
 
Entity Framework 7
Entity Framework 7Entity Framework 7
Entity Framework 7
 
DotNet Framework e Orientação a Objetos 1 - Introdução
DotNet Framework e Orientação a Objetos 1 - IntroduçãoDotNet Framework e Orientação a Objetos 1 - Introdução
DotNet Framework e Orientação a Objetos 1 - Introdução
 
Diapositivos práticos - Integração de Sistemas.pdf
Diapositivos práticos - Integração de Sistemas.pdfDiapositivos práticos - Integração de Sistemas.pdf
Diapositivos práticos - Integração de Sistemas.pdf
 
Curso jsf
Curso jsfCurso jsf
Curso jsf
 
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone AppsComo deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
 
Slide Aula - Curso CakePHP
Slide Aula - Curso CakePHPSlide Aula - Curso CakePHP
Slide Aula - Curso CakePHP
 
Tecnologias Microsoft em Linux: .NET Core, SQL Server e Visual Studio Code - ...
Tecnologias Microsoft em Linux: .NET Core, SQL Server e Visual Studio Code - ...Tecnologias Microsoft em Linux: .NET Core, SQL Server e Visual Studio Code - ...
Tecnologias Microsoft em Linux: .NET Core, SQL Server e Visual Studio Code - ...
 
Web components para o seu design system
Web components para o seu design systemWeb components para o seu design system
Web components para o seu design system
 
Desenvolviemento web com ASP.Net e MVC
Desenvolviemento web com ASP.Net e MVCDesenvolviemento web com ASP.Net e MVC
Desenvolviemento web com ASP.Net e MVC
 
Drupal 7 - Nova Versão para Novos Desafios
Drupal 7 - Nova Versão para Novos DesafiosDrupal 7 - Nova Versão para Novos Desafios
Drupal 7 - Nova Versão para Novos Desafios
 
CDI Extensions e DeltaSpike
CDI Extensions e DeltaSpikeCDI Extensions e DeltaSpike
CDI Extensions e DeltaSpike
 
Python - Programando em alto nível
Python - Programando em alto nívelPython - Programando em alto nível
Python - Programando em alto nível
 

Mais de C. Augusto Proiete

Developing Windows 8 Apps with HTML and JavaScript - Codebits 2012
Developing Windows 8 Apps with HTML and JavaScript - Codebits 2012Developing Windows 8 Apps with HTML and JavaScript - Codebits 2012
Developing Windows 8 Apps with HTML and JavaScript - Codebits 2012C. Augusto Proiete
 
Windows 8: Desenvolvimento de Metro Style Apps
Windows 8: Desenvolvimento de Metro Style AppsWindows 8: Desenvolvimento de Metro Style Apps
Windows 8: Desenvolvimento de Metro Style AppsC. Augusto Proiete
 
Windows Workflow Foundation 4: Introdução
Windows Workflow Foundation 4: IntroduçãoWindows Workflow Foundation 4: Introdução
Windows Workflow Foundation 4: IntroduçãoC. Augusto Proiete
 
Reporting Services 2008 R2: Novidades
Reporting Services 2008 R2: NovidadesReporting Services 2008 R2: Novidades
Reporting Services 2008 R2: NovidadesC. Augusto Proiete
 
Microsoft MVP 2011 ERL - C. Augusto Proiete
Microsoft MVP 2011 ERL - C. Augusto ProieteMicrosoft MVP 2011 ERL - C. Augusto Proiete
Microsoft MVP 2011 ERL - C. Augusto ProieteC. Augusto Proiete
 
Microsoft Transcript Report - C. Augusto Proiete
Microsoft Transcript Report - C. Augusto ProieteMicrosoft Transcript Report - C. Augusto Proiete
Microsoft Transcript Report - C. Augusto ProieteC. Augusto Proiete
 
Funcionalidades de Acesso a Dados no 'Mango'
Funcionalidades de Acesso a Dados no 'Mango'Funcionalidades de Acesso a Dados no 'Mango'
Funcionalidades de Acesso a Dados no 'Mango'C. Augusto Proiete
 
Controlo de Versões Distribuído com Git
Controlo de Versões Distribuído com GitControlo de Versões Distribuído com Git
Controlo de Versões Distribuído com GitC. Augusto Proiete
 
Novidades ASP .NET MVC 3 (BETA)
Novidades ASP .NET MVC 3 (BETA)Novidades ASP .NET MVC 3 (BETA)
Novidades ASP .NET MVC 3 (BETA)C. Augusto Proiete
 
Inversão de Controlo e Injecção de Dependência na .NET Framework
Inversão de Controlo e Injecção de Dependência na .NET FrameworkInversão de Controlo e Injecção de Dependência na .NET Framework
Inversão de Controlo e Injecção de Dependência na .NET FrameworkC. Augusto Proiete
 
ASP .NET 4.0 WebForms, Novas funcionalidades
ASP .NET 4.0 WebForms, Novas funcionalidadesASP .NET 4.0 WebForms, Novas funcionalidades
ASP .NET 4.0 WebForms, Novas funcionalidadesC. Augusto Proiete
 
Novidades do Visual Basic .NET 10
Novidades do Visual Basic .NET 10Novidades do Visual Basic .NET 10
Novidades do Visual Basic .NET 10C. Augusto Proiete
 
Nova Geração de Certificações Microsoft Visual Studio 2008 e Visual Studio 2010
Nova Geração de Certificações Microsoft Visual Studio 2008 e Visual Studio 2010Nova Geração de Certificações Microsoft Visual Studio 2008 e Visual Studio 2010
Nova Geração de Certificações Microsoft Visual Studio 2008 e Visual Studio 2010C. Augusto Proiete
 
Introdução ao WCF - Windows Communication Foundation
Introdução ao WCF - Windows Communication FoundationIntrodução ao WCF - Windows Communication Foundation
Introdução ao WCF - Windows Communication FoundationC. Augusto Proiete
 
Apresentação da Comunidade NetPonto
Apresentação da Comunidade NetPontoApresentação da Comunidade NetPonto
Apresentação da Comunidade NetPontoC. Augusto Proiete
 

Mais de C. Augusto Proiete (19)

Developing Windows 8 Apps with HTML and JavaScript - Codebits 2012
Developing Windows 8 Apps with HTML and JavaScript - Codebits 2012Developing Windows 8 Apps with HTML and JavaScript - Codebits 2012
Developing Windows 8 Apps with HTML and JavaScript - Codebits 2012
 
Windows 8: Desenvolvimento de Metro Style Apps
Windows 8: Desenvolvimento de Metro Style AppsWindows 8: Desenvolvimento de Metro Style Apps
Windows 8: Desenvolvimento de Metro Style Apps
 
Windows Workflow Foundation 4: Introdução
Windows Workflow Foundation 4: IntroduçãoWindows Workflow Foundation 4: Introdução
Windows Workflow Foundation 4: Introdução
 
Reporting Services 2008 R2: Novidades
Reporting Services 2008 R2: NovidadesReporting Services 2008 R2: Novidades
Reporting Services 2008 R2: Novidades
 
Microsoft MVP 2011 ERL - C. Augusto Proiete
Microsoft MVP 2011 ERL - C. Augusto ProieteMicrosoft MVP 2011 ERL - C. Augusto Proiete
Microsoft MVP 2011 ERL - C. Augusto Proiete
 
Microsoft Transcript Report - C. Augusto Proiete
Microsoft Transcript Report - C. Augusto ProieteMicrosoft Transcript Report - C. Augusto Proiete
Microsoft Transcript Report - C. Augusto Proiete
 
Funcionalidades de Acesso a Dados no 'Mango'
Funcionalidades de Acesso a Dados no 'Mango'Funcionalidades de Acesso a Dados no 'Mango'
Funcionalidades de Acesso a Dados no 'Mango'
 
Novidades do ASP .NET MVC 3
Novidades do ASP .NET MVC 3Novidades do ASP .NET MVC 3
Novidades do ASP .NET MVC 3
 
Controlo de Versões Distribuído com Git
Controlo de Versões Distribuído com GitControlo de Versões Distribuído com Git
Controlo de Versões Distribuído com Git
 
Novidades ASP .NET MVC 3 (BETA)
Novidades ASP .NET MVC 3 (BETA)Novidades ASP .NET MVC 3 (BETA)
Novidades ASP .NET MVC 3 (BETA)
 
Inversão de Controlo e Injecção de Dependência na .NET Framework
Inversão de Controlo e Injecção de Dependência na .NET FrameworkInversão de Controlo e Injecção de Dependência na .NET Framework
Inversão de Controlo e Injecção de Dependência na .NET Framework
 
ASP .NET 4.0 WebForms, Novas funcionalidades
ASP .NET 4.0 WebForms, Novas funcionalidadesASP .NET 4.0 WebForms, Novas funcionalidades
ASP .NET 4.0 WebForms, Novas funcionalidades
 
Novidades do CSharp 4.0
Novidades do CSharp 4.0Novidades do CSharp 4.0
Novidades do CSharp 4.0
 
Novidades do Visual Basic .NET 10
Novidades do Visual Basic .NET 10Novidades do Visual Basic .NET 10
Novidades do Visual Basic .NET 10
 
Nova Geração de Certificações Microsoft Visual Studio 2008 e Visual Studio 2010
Nova Geração de Certificações Microsoft Visual Studio 2008 e Visual Studio 2010Nova Geração de Certificações Microsoft Visual Studio 2008 e Visual Studio 2010
Nova Geração de Certificações Microsoft Visual Studio 2008 e Visual Studio 2010
 
Introdução ao WCF - Windows Communication Foundation
Introdução ao WCF - Windows Communication FoundationIntrodução ao WCF - Windows Communication Foundation
Introdução ao WCF - Windows Communication Foundation
 
ASP .NET MVC na Prática
ASP .NET MVC na PráticaASP .NET MVC na Prática
ASP .NET MVC na Prática
 
Introdução ao ASP .NET MVC
Introdução ao ASP .NET MVCIntrodução ao ASP .NET MVC
Introdução ao ASP .NET MVC
 
Apresentação da Comunidade NetPonto
Apresentação da Comunidade NetPontoApresentação da Comunidade NetPonto
Apresentação da Comunidade NetPonto
 

Entity Framework 4.0 Novas Funcionalidades e Formas de Trabalho

  • 1. Entity Framework 4.0, Novas Funcionalidades
  • 2. Caio Proiete • 10 anos de experiência profissional em TI • Microsoft Most Valuable Professional • Microsoft Certified Trainer @ CICLO • Líder da Comunidade NetPonto
  • 3. Entity Framework (Geral) • Ferramenta de “O/RM” (Object-relational Mapping) da Microsoft - e não só! • Permite executar acções CRUD com Tabelas, Stored Procedures e Views • Permite Transações e controlo de Concorrência • Desenvolvido para suportar diferentes bases de dados num mesmo projecto • Vários providers disponíveis (SQL Server, Oracle, MySQL, DB2, etc...)
  • 4. Entity Framework 1 -> .NET 3.5 • Principais Características • Geração do modelo a partir da base de dados • Herança, Agregação, Filtros • Operações CRUD simplificadas • Consultas via LINQ • Suporte a diferentes bases de dados • Query Language própria, independente de base de dados
  • 5. Entity Framework 1 -> .NET 3.5 • Principais Limitações / Problemas • Designer com recursos limitados • Sem suporte a Model-first • Sem suporte a Lazy Loading • Sem suporte a objectos POCO • Suporte a Stored Procedures limitado • Código SQL gerado de difícil leitura • Dificuldade para utilizar em projectos com N- camadas
  • 6. Limitações ultrapassadas e mais novidades Entity Framework 4.0
  • 7. Entity Framework 4 -> .NET 4.0 • Model-first development • Self-tracking entities • Automatic pluralization • SQL generation improvements • Foreign keys in models • More LINQ operator support • POCO class support • LINQ extensibility • Lazy loading • ExecuteStoreQuery • T4 Code Generation • ExecuteStoreCommand • Template customization • SPROC import improvements • IObjectSet • Model defined functions • Virtual SaveChanges • WPF designer integration • ObjectStateManager control • Code-Only development (Feature CTP)
  • 8. Entity Framework 4 -> .NET 4.0 • Diferentes formas de trabalhar • Database-first • Comece pela base de dados e crie o modelo conceptual a partir deste • Model-first • Comece pelo modelo conceptual e crie a base de dados a partir deste • Code Only* • Modelo conceptual e mapping totalmente via código
  • 9. DB Modelo Código Database-first Demo
  • 10. DB Modelo Código Model-first Demo
  • 11. DB Modelo Código Suporte POCO / T4 Demo
  • 12. Resumo • Diversas novidades no Entity Framework 4 • Limitações da versão 1.0 ultrapassadas • Diferentes formas de trabalhar • Suporte a POCO e geração de código com templates T4 • E muito mais...
  • 13. Q&A
  • 14. A sua opinião é importante! Complete o questionário de avaliação e devolva-o à saida.