Como os modelos compactados são armazenados na tabela EF 4.3 Code First Migrations __MigrationHistory?

StackOverflow https://stackoverflow.com//questions/10683726

Pergunta

Estou trabalhando com Code First Migrations (Entity Framework 4.3) e gostaria de obter uma versão binária compactada do modelo atual, para poder compará-lo manualmente com o modelo mais recente armazenado no __MigrationHistory tabela (ou para uma que armazenei em um arquivo de texto).

Existe o EdmMetadata.TryGetModelHash() método, mas está marcado como obsoleto e quero evitá-lo, se possível (por motivos de segurança futura).

Como eu faria isso no EF 4.3?

Editar: Com um pouco mais de investigação e as informações em A resposta de Pawel Eu descobri que este campo não armazena mais um hash, mas uma representação binária compactada do modelo.É isso que estou tentando criar.

Foi útil?

Solução

__MigrationHistory tabela não contém mais um hash do modelo.Em vez disso, agora contém o modelo na forma compactada.Além disso, verificar se o modelo mudou ou não não depende mais apenas da comparação do hash, pois as migrações precisam "saber" o que mudou e como mudou.

EdmMetadata era uma tabela que estava sendo usada antes das migrações serem integradas ao Entity Framowork em 4.3/5.0 e não será criada em bancos de dados criados pelo EF 4.3+.Você também pode encontrar alguns detalhes adicionais aqui: http://blog.oneunicorn.com/2012/01/13/ef-4-3-beta-1-what-happened-to-that-edmmetadata-table/

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top