Entity    Framework    Code First1        Entity Framework Code First
2Me apresentando Consultor   em tecnologias Microsoft Sócio   da startup Mozit Profissional   Certificado Microsoft    ...
3Novidades do EF Code First Possibilidade de fazer tudo via código Significa que funciona sem EDMX Mais produtividade ...
4Como funciona o Code First   Enquanto os outros métodos geram meta    dados em memória a partir do EDMX       XML ->   ...
5Convenções do Code First                                 Chave Primária definida como                                    ...
6ComeçandoEF Code First                    Entity Framework Code First
7Instalando o Code First1.   Opção: via download no site        http://msdn.com/data/ef        Baixar e instalar       ...
8Demo: Primeiros passos1.   Criando as Entidades2.   Criando o DbContext3.   Gerenciando o contexto4.   Gerando o banco de...
9Configuração deEntidades                  Entity Framework Code First
10Porque configurarmapeamentos? Quando  as convenções não atendem aos requisitos    Acontece frequentemente por sinal  ...
11Tipos de mapeamentos  Data Annotations         Fluent API Usa atributos nas    Usa métodos  classes e             enca...
12Fluent vs Data Annotations    Data Annotation                Fluent API   Configuração na própria       Configuração s...
13Demo: Configurando comData Annotation1.   Definindo uma chave2.   Definindo tamanho máximo3.   Definindo campos obrigató...
14Demo: Configurando com  Fluent API1.   Definindo tamanho máximo2.   Definindo campos obrigatórios (not null)3.   Definin...
15Configuraçõesavançadas                 Entity Framework Code First
16  Relacionamentos 1..1One-to-one                    Entity Framework Code First
17 Relacionamentos 1..NOne-to-many                   Entity Framework Code First
18Relacionamentos N..NMany-to-many                    Entity Framework Code First
19Separando as configurações Quanto  mais entidades tiver meu projeto  maior e mais confuso vai ficar meu  OnModelCreatin...
20Demo: Definindoconfigurações de entidades1.   Criando classes de configuração2.   Realizando as configurações3.   Deixan...
21      Estratégias de criação da      baseÉ possivel modificar a forma como o EF cria o  banco de dados através da class...
22    Carregando base com dados    iniciaisclass DemoInitialize : CreateDatabaseIfNotExist<Context>{   protected override ...
23Demo: Configurando ainicialização1.   Criando inicialização da base2.   Customizando inicialização da base3.   Visualiza...
24      Duvidas?Blog: waldyrfelix.net/blogTwitter: @WaldyrFelixEmail: waldyrfelix@gmail.com                               ...
Upcoming SlideShare
Loading in …5
×

Entity Framework Code First

4,467
-1

Published on

Slides da palestra no evento DevBrasil Open Day 2011 em Natal.

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,467
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
61
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Entity Framework Code First

  1. 1. Entity Framework Code First1 Entity Framework Code First
  2. 2. 2Me apresentando Consultor em tecnologias Microsoft Sócio da startup Mozit Profissional Certificado Microsoft Entity Framework Code First
  3. 3. 3Novidades do EF Code First Possibilidade de fazer tudo via código Significa que funciona sem EDMX Mais produtividade Controle absoluto do código Criação simplificada do DbContext Entidades limpas Geração automática do banco de dados Entity Framework Code First
  4. 4. 4Como funciona o Code First Enquanto os outros métodos geram meta dados em memória a partir do EDMX  XML -> EntityType, AssociationType, EdmType, etc Code First gera os mesmos meta dados a partir do código  Classes -> EntityType, AssociationType, EdmType, Databas e, etc Para isso o EF Code First usa Data Annotations e/ou Fluent API Entity Framework Code First
  5. 5. 5Convenções do Code First Chave Primária definida como “Id” ou “CategoryId” Relacionamento é inferido Entity Framework Code First
  6. 6. 6ComeçandoEF Code First Entity Framework Code First
  7. 7. 7Instalando o Code First1. Opção: via download no site  http://msdn.com/data/ef  Baixar e instalar  Referenciar DLL no projeto2. Opção: via NuGet  PM> Install-Package EntityFramework  E só... Entity Framework Code First
  8. 8. 8Demo: Primeiros passos1. Criando as Entidades2. Criando o DbContext3. Gerenciando o contexto4. Gerando o banco de dados Entity Framework Code First
  9. 9. 9Configuração deEntidades Entity Framework Code First
  10. 10. 10Porque configurarmapeamentos? Quando as convenções não atendem aos requisitos  Acontece frequentemente por sinal  Exemplo: string mapeado para nvarchar(max) Melhorar performance do banco Mudar tipos de dados que precisamos usar Entity Framework Code First
  11. 11. 11Tipos de mapeamentos Data Annotations Fluent API Usa atributos nas  Usa métodos classes e encadeados fora propriedades das entidades “Suja” o model  Necessário mais com metadados código Entity Framework Code First
  12. 12. 12Fluent vs Data Annotations Data Annotation Fluent API Configuração na própria  Configuração separada entidade da entidade Dá pra usar uma classe  Possibilidade de separar separada como as configurações por Metadata arquivo Configuração por  Facilidade natural da Atributos programação fluente Aumenta o tamanho das  Aumenta o número de classes arquivo necessários Entity Framework Code First
  13. 13. 13Demo: Configurando comData Annotation1. Definindo uma chave2. Definindo tamanho máximo3. Definindo campos obrigatórios (not null)4. Visualizando alterações na base Entity Framework Code First
  14. 14. 14Demo: Configurando com Fluent API1. Definindo tamanho máximo2. Definindo campos obrigatórios (not null)3. Definindo nome da tabela e colunas4. Definindo tipo das colunas5. Usando tipos complexos Entity Framework Code First
  15. 15. 15Configuraçõesavançadas Entity Framework Code First
  16. 16. 16 Relacionamentos 1..1One-to-one Entity Framework Code First
  17. 17. 17 Relacionamentos 1..NOne-to-many Entity Framework Code First
  18. 18. 18Relacionamentos N..NMany-to-many Entity Framework Code First
  19. 19. 19Separando as configurações Quanto mais entidades tiver meu projeto maior e mais confuso vai ficar meu OnModelCreating Solução: Criar configurações específicas de cada entidade em sua própria classe de configuração  Deve herdar de EntityTypeConfiguration  As configurações passam para o construtor dessa classe Entity Framework Code First
  20. 20. 20Demo: Definindoconfigurações de entidades1. Criando classes de configuração2. Realizando as configurações3. Deixando as configurações visiveis ao EF4. Configurando o relacionamento Entity Framework Code First
  21. 21. 21 Estratégias de criação da baseÉ possivel modificar a forma como o EF cria o banco de dados através da classe Database Os métodos possiveis são:  DropCreateDatabaseAlways  CreateDatabaseIfNotExists  DropCreateDatabaseIfModelChangesDatabase.SetInitializer( new DropCreateDatabaseIfModelChanges<DemoContext>()); Entity Framework Code First
  22. 22. 22 Carregando base com dados iniciaisclass DemoInitialize : CreateDatabaseIfNotExist<Context>{ protected override void Seed(Context context){ context.Categories.Add( new Category { Name = "Sapatos", IsActive = true }); context.SaveChanges(); base.Seed(context); } Entity Framework Code First}
  23. 23. 23Demo: Configurando ainicialização1. Criando inicialização da base2. Customizando inicialização da base3. Visualizando dados criados na base Entity Framework Code First
  24. 24. 24 Duvidas?Blog: waldyrfelix.net/blogTwitter: @WaldyrFelixEmail: waldyrfelix@gmail.com Entity Framework Code First
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×