O ADO.NET Entity Framework e NHibernate servir a plataforma Microsoft NET , uma plataforma de programação para a criação de aplicativos do Windows. . Ambos atuam como frameworks de mapeamento objeto-relacional , ajudando a criar bancos de dados de objetos virtuais para traduzir dados entre sistemas de tipos incompatíveis. Embora ambas as opções permitem que você implementar um ORM , eles diferem em características e implementação. Sua escolha de quadro acaba afetando o desempenho da aplicação final, para fazer sua pesquisa e se informar antes de fazer uma escolha. Modelo Modelo de Dados Características
ADO.NET Entidade gera código fonte necessário para o armazenamento e as relações entidade. NHibernate usuários devem executar esta ação manualmente. Da mesma forma, Entidade cria automaticamente as classes definidas pelo modelo de dados enquanto NHibernate não tem esse recurso . Enquanto entidade chega ao banco de dados por cada declaração durante gravação de lotes , recursos de configuração do NHibernate permitir que ele lote todas as gravações em uma única viagem. NHibernate suporta uma variedade de extensões - como NHibernate Pesquisa e NHibernate Shards - mas não Entidade não suporta extensões
Desempenho
Em 2009, a desenvolvedora de software Silverlight Gergely Orosz contrastado . entidade e NHibernate através de um teste de desempenho detalhado, usando as duas estruturas para implementar duas aplicações simples, com a mesma estrutura da tabela, operações e dados. Orosz então medido o número de operações realizadas para executar tarefas como armazenar, atualizar e excluir. A aplicação de Entidade- desenvolvido de forma limpa ultrapassado o aplicativo NHibernate nas áreas de armazenamento de dados e lendo sobre as relações . App NHibernate superou seu concorrente na atualização e exclusão . Orosz encontrados os quadros quase iguais na área de leitura por ID .
Developers, História e disponibilidade
Entidade vem diretamente da Microsoft, os desenvolvedores do . plataforma NET . NHibernate é um framework de terceiros . Ambos estão livres para baixar e usar, mas apenas NHibernate opera sob a GNU Lesser General Public License, o que significa que os usuários podem modificar e editar esta ferramenta open-source usando seu código-fonte livremente disponível. Entidade traça a sua história de volta a 2008, enquanto NHibernate tem tido um pouco mais de tempo para se desenvolver entre os desenvolvedores , com um primeiro lançamento em 2007. Seu ancestral , Hibernate, entrou em cena em 2000.
Considerações
Entidade chegou a versão 4.3 , enquanto NHibernate está na versão 3.2.0, tanto a partir de fevereiro de 2012. Como os desenvolvedores continuam a lançar novas versões , as características, funções e implementação de cada quadro vai mudar ao longo do tempo . Em última análise, nem quadro é objetivamente " melhor" do que o outro , é até cada desenvolvedor considerar suas necessidades e preferências e - com base no conhecimento de ambos os quadros - tomar sua própria decisão
< br. >