SlideShare uma empresa Scribd logo
1 de 9
Ninja Migrations
Entity Framework
Priscila Sato
@MayogaX
Cenário
•Gerenciar versões de bancos de dados não é
simples :(
•Procedures e scripts para “versionar” a base
•Alguns outros frameworks versionavam a base
•Code First possui 3 estratégias de criação de
banco de dados, nenhuma mantem o estado
anterior ao aplicar mudanças :(
Migrations o/
•Meio de controlar versões do banco de dados
•Vigia as suas classe POCO
•Possibilita dar update e downgrade na sua base
de dados
•Pode-se configurar detalhes da migration com
expressões lambda ou código sql
Código das Migrations
•É criada uma pasta no projeto com o código de
cada migration com métodos Up e Down
Comandos básicos
•Enable-Migrations
•Add-Migration NomeDaMigration
•Update-database
Automatic Migrations
•Automagic Migrations :)
•Não tem o Scaffolding dos métodos de Up e
Down
•Você não precisa criar as migrations na mão
•Você só precisa confiar no update-database
Automatic Migrations
•Para ativar o automatic migrations há duas
opções:
Na PM-Console:
Enable-Migrations -EnableAutomaticMigrations
Ou indo na Configuration do Migration:
AutomaticMigrationsEnabled = true;
DEMO
Obrigada o/
• Para mais (sobre Entity Framework):
• http://msdn.microsoft.com/pt-br/data/ef.aspx
• http://dev.mayogax.me/
• http://ferhenriquef.com
• http://carloscds.net/category/entity-
framework/
• http://thedatafarm.com/blog/

Mais conteúdo relacionado

Destaque

Scripts Entity Framework
Scripts Entity FrameworkScripts Entity Framework
Scripts Entity Framework
Priscila Mayumi
 
1ª madrugada de testes net coders coding dojo
1ª madrugada de testes net coders   coding dojo1ª madrugada de testes net coders   coding dojo
1ª madrugada de testes net coders coding dojo
Priscila Mayumi
 
Banco de dados de grafos
Banco de dados de grafosBanco de dados de grafos
Banco de dados de grafos
Priscila Mayumi
 

Destaque (16)

Do 0 a estar online no Google App Engine
Do 0 a estar online no Google App EngineDo 0 a estar online no Google App Engine
Do 0 a estar online no Google App Engine
 
Scripts Entity Framework
Scripts Entity FrameworkScripts Entity Framework
Scripts Entity Framework
 
OOD - Princípio da Inversão de Dependência
OOD - Princípio da Inversão de DependênciaOOD - Princípio da Inversão de Dependência
OOD - Princípio da Inversão de Dependência
 
Ruby versus Python
Ruby versus PythonRuby versus Python
Ruby versus Python
 
Trabalhando com banco de dados e Entity Framework
Trabalhando com banco de dados e Entity FrameworkTrabalhando com banco de dados e Entity Framework
Trabalhando com banco de dados e Entity Framework
 
1ª madrugada de testes net coders coding dojo
1ª madrugada de testes net coders   coding dojo1ª madrugada de testes net coders   coding dojo
1ª madrugada de testes net coders coding dojo
 
OOD - Princípio da Substituição de Liskov
OOD - Princípio da Substituição de LiskovOOD - Princípio da Substituição de Liskov
OOD - Princípio da Substituição de Liskov
 
O Mágico Mundo do Entity Framework
O Mágico Mundo do Entity FrameworkO Mágico Mundo do Entity Framework
O Mágico Mundo do Entity Framework
 
OOD - Princípio Open/Closed
OOD - Princípio Open/ClosedOOD - Princípio Open/Closed
OOD - Princípio Open/Closed
 
Oportunidades para desenvolvedores
Oportunidades para desenvolvedoresOportunidades para desenvolvedores
Oportunidades para desenvolvedores
 
Banco de dados de grafos
Banco de dados de grafosBanco de dados de grafos
Banco de dados de grafos
 
Sistemas de recomendações e neo4J na cloud computing
Sistemas de recomendações e neo4J na cloud computingSistemas de recomendações e neo4J na cloud computing
Sistemas de recomendações e neo4J na cloud computing
 
DDD - Domain Driven Design
DDD - Domain Driven DesignDDD - Domain Driven Design
DDD - Domain Driven Design
 
ASP.NET Identity - O Novo componente de Membership do ASP.NET
ASP.NET Identity - O Novo componente de Membership do ASP.NETASP.NET Identity - O Novo componente de Membership do ASP.NET
ASP.NET Identity - O Novo componente de Membership do ASP.NET
 
Apresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação PythonApresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação Python
 
Bolovo - problema antigo de arquitetura de software - não use por aí
Bolovo - problema antigo de arquitetura de software - não use por aíBolovo - problema antigo de arquitetura de software - não use por aí
Bolovo - problema antigo de arquitetura de software - não use por aí
 

Semelhante a Ninja migrations

Entity Framework 5 & Migrations
Entity Framework 5 & MigrationsEntity Framework 5 & Migrations
Entity Framework 5 & Migrations
Waldyr Felix
 

Semelhante a Ninja migrations (20)

Ninja Migrations Entity Framework
Ninja Migrations Entity FrameworkNinja Migrations Entity Framework
Ninja Migrations Entity Framework
 
Entity Framework 5 & Migrations
Entity Framework 5 & MigrationsEntity Framework 5 & Migrations
Entity Framework 5 & Migrations
 
BluDotNet - Entity Framework Code First Migrations
BluDotNet - Entity Framework Code First MigrationsBluDotNet - Entity Framework Code First Migrations
BluDotNet - Entity Framework Code First Migrations
 
Migrations com Entity Framework Core
Migrations com Entity Framework CoreMigrations com Entity Framework Core
Migrations com Entity Framework Core
 
Entity framework migrations
Entity framework migrationsEntity framework migrations
Entity framework migrations
 
Monitoramento de Bancos de Dados MS SQL Server com Zabbix - SQL Technology Da...
Monitoramento de Bancos de Dados MS SQL Server com Zabbix - SQL Technology Da...Monitoramento de Bancos de Dados MS SQL Server com Zabbix - SQL Technology Da...
Monitoramento de Bancos de Dados MS SQL Server com Zabbix - SQL Technology Da...
 
Introdução ao Flyway
Introdução ao FlywayIntrodução ao Flyway
Introdução ao Flyway
 
Webinar Novidades da Release R2017b
Webinar Novidades da Release R2017bWebinar Novidades da Release R2017b
Webinar Novidades da Release R2017b
 
pgModeler: muito mais que um modelador de bancos de dados PostgreSQL
pgModeler: muito mais que um modelador de bancos de dados PostgreSQLpgModeler: muito mais que um modelador de bancos de dados PostgreSQL
pgModeler: muito mais que um modelador de bancos de dados PostgreSQL
 
Como desenvolver com um sistema com um front-end colossal?
Como desenvolver com um sistema com um front-end colossal?Como desenvolver com um sistema com um front-end colossal?
Como desenvolver com um sistema com um front-end colossal?
 
Barramento de Serviços
Barramento de ServiçosBarramento de Serviços
Barramento de Serviços
 
djangoII.pptx
djangoII.pptxdjangoII.pptx
djangoII.pptx
 
TDC2018SP | Trilha Arq Dados - Gestao de Dados: Como ter entrega e integracao...
TDC2018SP | Trilha Arq Dados - Gestao de Dados: Como ter entrega e integracao...TDC2018SP | Trilha Arq Dados - Gestao de Dados: Como ter entrega e integracao...
TDC2018SP | Trilha Arq Dados - Gestao de Dados: Como ter entrega e integracao...
 
Apresentação do Aplicativo de Controle de Combustíveis
Apresentação do Aplicativo de Controle de CombustíveisApresentação do Aplicativo de Controle de Combustíveis
Apresentação do Aplicativo de Controle de Combustíveis
 
Boas práticas para migração do sql server para o windows azure
Boas práticas para migração do sql server para o windows azureBoas práticas para migração do sql server para o windows azure
Boas práticas para migração do sql server para o windows azure
 
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
 
O Futuro do Data Dude (VS DBPro)
O Futuro do Data Dude (VS DBPro)O Futuro do Data Dude (VS DBPro)
O Futuro do Data Dude (VS DBPro)
 
Sql Server
Sql ServerSql Server
Sql Server
 
ASM.NET MVC 5 + Entity Framework - Explorando conceitos e criando um projeto ...
ASM.NET MVC 5 + Entity Framework - Explorando conceitos e criando um projeto ...ASM.NET MVC 5 + Entity Framework - Explorando conceitos e criando um projeto ...
ASM.NET MVC 5 + Entity Framework - Explorando conceitos e criando um projeto ...
 
Publiquei meu site e não funcionou, e agora?
Publiquei meu site e não funcionou, e agora?Publiquei meu site e não funcionou, e agora?
Publiquei meu site e não funcionou, e agora?
 

Último

Último (8)

Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 

Ninja migrations