Pergunta

Você usou o OpenAccess ORM do Telerik ? Como ele se compara a NHibernate? Quando devo considerar usá-lo durante NHibernate?

Foi útil?

Solução

Eu estou perguntando a mesma coisa a mim mesmo. Por um lado, há NH com a sua graça, auto open-source, mas com opções de suporte limitados. Por outro lado, uma adição relativamente nova para a caixa de um provedor de ferramenta bem conhecida, a OA.

OA custa dinheiro, mas você obter apoio. NH é livre, mas o apoio tem sido conhecido, pelo menos na minha experiência breve a ser limitado e lento na vinda.

Eu acho que ambos são produtos finos prováveis. Eu decidi dar OA tentar desde já sou um usuário de ferramentas de Telerik. OA e seu apoio estão sendo pagos de qualquer maneira.

NH usa classes simples e objeto sem decorações nas propriedades de classe qualquer. OA exige decorações (bem gerado pela OA Visual Studio GUI).

NH requer uma "sessão" em que para fazer uma unidade de trabalho com o banco de dados; OA chama de "escopo". Ambos uso "transação".

OA tem integração com o Visual Studio e pode tanto prospectivas e reverse-map para e de um banco de dados. mapeamento para a frente é que você pode projetar suas classes e, em seguida, "push" aqueles no banco de dados para persistência. O "reverso" é para você desenvolvedores "modelo de domínio" que é o que eu prefiro.

OA é definitivamente passando por algumas grandes atualizações como Telerik desempenha "catch up" por sua recente aquisição e liberação de OpenAccess, anteriormente detidos por Vanatec (de Alemanha).

Tanto quanto uma "facilidade de uso" e "performance / escalabilidade" ponto de vista, eu gostaria de saber onde cada pé. Tenho certeza que alguém lá fora poderia montar um teste honesto entre os dois e fazer essas determinações.

Uma coisa que eu gosto sobre NH é os modelos disponíveis para gerar o código necessário não apenas para as "burras" objetos de negócios (que é tudo OA gera agora), mas para um BLL e DLL. Depois de muita conversa com Telerik, tenho a impressão de que eles planejam para mais opções de geração de código para OA é mais útil do caixa.

Espero que isso ajude! Alguém por favor tentar obter algumas estatísticas sobre os problemas de desempenho.

Outras dicas

Eu não usei, mas um benefício óbvio para mim, é OpenAccess é suportado por Telerik, onde, como nHibernate é suportado pela comunidade. Dependendo da sua empresa isso pode ser um fator decisivo se o seu pronto para abraçar soluções de código aberto sem guarentee de apoio.

Editar

Para o registro eu sou um grande defensor do nHibernate, e de código aberto em geral. Tenho vindo a utilizar nHibernate para os últimos seis meses, usando-o para todo o novo trabalho em nossa aplicação web. Para minha empresa atual é um bom ajuste (Startups amor livre).

No entanto, a minha employeer anterior, teria tido um tempo muito difícil aceitar uma comunidade apoiado componente como uma peça central de sua infra-estrutura. Isto é perfeitamente razoável, como sites dessas empresas são sua única fonte de receita. Você gostaria de participação de todo o seu negócio em software que não tem nenhuma responsabilidade associada a ele? Algumas pessoas não iria querer correr esse risco por diante.

Pessoalmente eu ter encontrado o suporte para nHibernate para ser a par e ainda melhor com alguns fornecedores comerciais.

O meu ponto não é para bater OSS, mas para destacar um benefício de usar software que tem um suporte coporate, com um canal de suporte totalmente pessoal e dedicado.

Mais uma razão: Atualmente OpenAccess tem melhores características de desempenho, se você precisar ORM rápido para o seu projeto vai ser uma escolha melhor. Consulte ORM benchmarks para mais detalhes.

Eu diria nHibernate é gratuito e OpenAccess é de R $ 399. Embora CodeSmith com modelos nHibernate é de US $ 99- $ 399 se você quiser nHibernate facilmente automatizada. Parece que OpenAccess tem mais transparência na camada de dados e é provavelmente mais fácil de manter. Mas, se você usou algo como Spring.Net você não só teria nHibernate automatizar os dados, mas a camada de serviço automatizado. Embora take isso com um grão de sal porque nHibernate e Spring.Net são outro lote de arquivos de configuração que precisam ser mantidos. Aposto OpenAccess é GUI amigável. Qualquer um dos dois trabalhos, mas não há muito mais informações lá fora, em nHibernate.

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