Le ADO.NET Entity Framework et NHibernate servent la plate-forme Microsoft NET, une plate-forme de programmation pour créer des applications Windows. . Les deux agissent comme des cadres de mapping objet-relationnel , aider à créer des bases de données d'objets virtuels pour traduire des données entre les systèmes de type incompatible . Bien que les deux options vous permettent de mettre en œuvre un ORM , ils diffèrent dans les fonctionnalités et la mise en œuvre . Votre choix du cadre affecte finalement les performances de l'application finale, alors faites vos recherches et s'informer avant de faire un choix. Le modèle de modèle de données de caractéristiques
ADO.NET Entity génère du code source requis pour le stockage et les relations entité. NHibernate utilisateurs doivent effectuer cette action manuellement . De même, l'entité crée automatiquement des classes définies par le modèle de données tandis que NHibernate n'a pas cette fonctionnalité . Alors que l'entité atteigne la base de données pour chaque déclaration pendant le dosage d'écriture, les fonctions de configuration de NHibernate lui permettent de lot toutes les écritures en un seul voyage . NHibernate prend en charge une variété d'extensions - comme NHibernate Recherche et NHibernate Shards - mais une entité ne supporte pas les extensions
Performance
En 2009, Silverlight développeur de logiciels Gergely Orosz contrastée. entité et NHibernate via un test de performance détaillée , en utilisant les deux cadres à mettre en œuvre deux applications simples avec la même structure de table , les opérations et les données. Orosz ensuite mesuré le nombre d'opérations effectuées pour exécuter des tâches telles que magasins , mettre à jour et supprimer. L'application Entity développé proprement surclassé l'application NHibernate dans les domaines de stocker des données et de la lecture sur les relations . App NHibernate a battu son concurrent dans la mise à jour et la suppression. Orosz a trouvé les cadres à peu près égale dans le domaine de la lecture par ID .
Développeurs , Histoire et la disponibilité
entité vient directement de Microsoft , les développeurs de l' plate-forme. NET . NHibernate est un framework tiers. Les deux sont gratuits à télécharger et à utiliser, mais seulement NHibernate opère sous la GNU Lesser General Public License , ce qui signifie que les utilisateurs peuvent modifier et éditer cet outil open-source avec son code source librement disponible . Entity l'histoire remonte à 2008 , alors que NHibernate a eu un peu plus de temps pour se développer parmi les développeurs , avec une première version en 2007. Son ancêtre , Hibernate, a frappé la scène en 2000.
Considérations
entité a atteint la version 4.3 alors que NHibernate est à la version 3.2.0 , en tant que de Février 2012 . Comme les développeurs continuent de publier de nouvelles versions , les caractéristiques , les fonctions et la mise en œuvre de chaque cadre changeront au fil du temps . En fin de compte , ni cadre est objectivement "mieux" que l'autre, c'est à chaque développeur de considérer ses besoins et préférences et - basé sur la connaissance des deux cadres - prendre sa propre décision
< br . > Photos