Entity Framework Migrations

38 views
Skip to first unread message

Robson de Almeida

unread,
Jan 23, 2013, 8:54:54 AM1/23/13
to de...@googlegroups.com
Opa! Tudo bem pessoal?

Alguém já utilizou as Entity Framework Migrations?

Alguém contra? Porquê?
À favor? Recomenda?

Obrigado.

Bernardo Bosak de Rezende

unread,
Jan 23, 2013, 6:56:00 PM1/23/13
to de...@googlegroups.com
Opa,

Só usei migrations no rails e comecei a usar o Pilgrim uma vez, nunca o EF Migrations.

Sou 100% a favor da abordagem, como você evoluiu seus bancos relacionais?



2013/1/23 Robson de Almeida <obiua...@gmail.com>

--
--
Acesse nosso blog http://devrs.net/
Siga-nos no twitter! http://twitter.com/DevRsNet
--
Antes de criar um novo post, para maior organização do grupo, procure seguir as regras de TAGS: http://devrs.net/regras-da-lista
Para postar para o grupo, envie email para de...@googlegroups.com
Para sair do grupo, envie email para devrs+un...@googlegroups.com



--
Bernardo Bosak de Rezende
http://bernardorezende.net/ - Arquitetura e Desenvolvimento
https://github.com/bernardobrezende/ - GitHub

"The weather-cock on the church spire, though made of iron, would soon be broken by the storm-wind if it did not understand the noble art of turning to every wind."
Heinrich Heine

Bernardo Bosak de Rezende

unread,
Jan 23, 2013, 6:56:11 PM1/23/13
to de...@googlegroups.com
evolui*

2013/1/23 Bernardo Bosak de Rezende <bernard...@gmail.com>

Robson de Almeida

unread,
Jan 23, 2013, 8:00:33 PM1/23/13
to de...@googlegroups.com
Oi Bernardo,

Pelo que li, as migrações do EF são bem parecidas com as do Rails.

Mas o Pilgrim me pareceu bem legal também.
Sabe se ele já vêm com alguma facilidade para rodar as migrações por linha de comando?
Pelo que entendi, você não utiliza mais ele. Porquê? Usaria novamente?

Hoje utilizamos migrações escritas em SQL mesmo.
Por isso procuro uma abordagem mais esperta. ;)


Abs.

Bernardo Bosak de Rezende

unread,
Jan 23, 2013, 8:21:27 PM1/23/13
to de...@googlegroups.com
Nunca usei o pilgrim em produção. Meu cenário exige que as migrações sejam em SQL também.

Até onde eu li e estudei do código do Pilgrim, ele parece ser perfeito para o que eu costumo precisar.

O Juan criou vários providers para o Pilgrim, não só para o Sql Server: https://github.com/juanplopes/pilgrim/tree/master/src/Pilgrim/Providers

Acho que a forma mais fácil seria "embeddar" a execução em uma Console Application. Mas o melhor de tudo é que o código é aberto :))




2013/1/23 Robson de Almeida <robson-d...@hotmail.com>

Leonardo Lima

unread,
Jan 24, 2013, 6:53:51 AM1/24/13
to de...@googlegroups.com
E ai Robinho, blz..


    começamos a usar no projeto, tem um brother no projeto que usa o rais e disse que é um ctrl+c   ctrl+v da MS. Como eu não uso rails não posso afirmar.
    Tem funcionado muito bem até o momento.
    Se tu já usa no rails recomendo no minimo testar em algum projeto antes de dispensar.

Abs,


Message has been deleted

Saraiva

unread,
Jan 24, 2013, 7:01:00 AM1/24/13
to de...@googlegroups.com
Eu recomento usar o FE para fazer o ORM usando Code First Fluent API. Migrações e alterações na estrutura relacional de dados faço na  mesmo, acho mais seguro.

Tenho usado bastante o EF, mas as migrações procuro usar só em ambiente de Desenv. Para homologação e produção gero o script só das alterações e passo para o time de DBA executar. Por uma questão de segurança da informação os usuários das aplicação só tem acesso de leitura e gravação de dados, alterar a estrutura do banco tem que ser por um DBA.

Robson de Almeida

unread,
Jan 24, 2013, 7:40:21 AM1/24/13
to devrs
Obrigado pelas respostas galera!

@Bernardo, o Pilgrim é mesmo bem maneiro. Mas acho que encontrei um framework mais esperto: Fluent Migrator. Ele já possui vários "runners" para linha de comando, NAnt, MSBuild e até o Rake, parece mais ativo, melhor documentado e mais utilizado. Se puder, vale a pena dar uma olhada nele.

@Leo, legal! Com certeza vou testar antes. Assim como testarei outros também. Obrigado.

@Saraiva, no meu caso eu sou o time de desenvolvimento, o time de infraestrutura, o time de testes, o time de integração e o time de DBA. Welcome to the startup world ... Por isso, quanto menos trabalho eu tiver, melhor. Isso siginifica automatizar ao máximo o que for possível. Não sei ainda como faremos no momento de integrar o código aos ambientes de teste, staging e produção. Mas preciso de uma solução segura - como você disse - e com o mínimo de interferência humana. nota: e para ser sincero, acredito que segurança = 1/(interferência humana).


Abs,

Robson de Almeida
Developer and aspiring entrepreneur
@robsondealmeida | robsondealmeida.org



2013/1/24 Saraiva <jonatas...@gmail.com>
--

Saraiva

unread,
Jan 24, 2013, 10:34:52 AM1/24/13
to de...@googlegroups.com
Robson, para seu cenário o EF Migrations pode funcionar bem. 

Você só ter que pensar se uma evolução do Modelo necessita de valores default para uma nova propriedade, se for este cenário terá que codificar esta migração, gerando um esforço/complexidade maior na evolução do sistema.



Em quarta-feira, 23 de janeiro de 2013 11h54min54s UTC-2, Robson de Almeida escreveu:

Saraiva

unread,
Jan 24, 2013, 11:03:39 AM1/24/13
to de...@googlegroups.com
Da uma olhada neste vídeo http://www.youtube.com/watch?v=dqZRMvnjcfA

FLW


Em quarta-feira, 23 de janeiro de 2013 11h54min54s UTC-2, Robson de Almeida escreveu:

Robson de Almeida

unread,
Jan 25, 2013, 6:56:52 AM1/25/13
to devrs
Vlw.

Abs,


2013/1/24 Saraiva <jonatas...@gmail.com>
--
Reply all
Reply to author
Forward
0 new messages