Frage

Was ist das beste Tool zum Generieren von Entity Class- und/oder HBM-Dateien und/oder SQL-Skripten für NHibernate?

Die folgende Liste stammt von http://www.hibernate.org/365.html, welches ist das Beste, warum?

  • Moregen Kostenloser Open-Source-O/R-Generator (GPL), der in bestehende Visual Studio-Projekte integriert werden kann.Führt auch Änderungen an generierten Klassen zusammen.
  • NConstruct Lite Kostenloses Tool zum Generieren von NHibernate O/R-Mapping-Quellcode.Unterstützung verschiedener Datenbanken (Microsoft SQL Server, Oracle, Access).
  • GENNIT NHibernate Code Generator Kostenlose/kommerzielle Web 2.0-Codegenerierung von NHibernate-Code mit WYSIWYG-Online-UML-Designer.
  • GenWise Studio mit NHibernate Template Kommerzielles Produkt;Importiert Ihre vorhandene Datenbank und generiert alle XML- und Klassendaten, einschließlich Fabriken.Es kann auch automatisch eine asp.net-Webanwendung für Ihren NHibernate BO-Layer generieren.
  • HQL-Analysator und hbm.xml-GUI-Editor
  • ObjectMapper von Mats Helander ist eine Mapping-GUI mit NHibernate-Unterstützung
  • MyGeneration ist eine vorlagenbasierte Codegenerator-GUI.Die Vorlagenbibliothek enthält Vorlagen zum Generieren von Zuordnungsdateien und Klassen aus einer Datenbank.
  • AndroMDA ist ein Open-Source-Framework zur Codegenerierung, das Model Driven Architecture (MDA) verwendet, um UML-Modelle in bereitstellbare Komponenten umzuwandeln.Es unterstützt die Generierung von Datenzugriffsschichten, die NHibernate als Persistenz-Framework verwenden.
  • CodeSmith-Vorlage für NH
  • NHibernate Helper Kit ist ein VS2005-Add-In zum Generieren von Klassen und Zuordnungsdateien.
  • NConstruct – Intelligent Software Factory Kommerzielles Produkt;Vollständige Generierung des .NET C#-Quellcodes für alle Ebenen des Informationssystems durch einfache Assistentenprozedur.O/R-Mapping basierend auf NHibernate.Sowohl für WinForms als auch für ASP.NET 2.0.
War es hilfreich?

Lösung

Ich denke, Sie sollten es sich ansehen Fließendes NHibernate stattdessen.Durch das Generieren von Zuordnungen erreichen Sie immer die 80-Prozent-Marke, und Sie müssen noch Anpassungen vornehmen, um das zu erhalten, was Sie möchten.Mit Fluent-NHibernate können Sie Ihre Entitäten mit einer kompilierbaren und refaktorfreundlichen API abbilden.

Andere Tipps

Es gibt eine neue Version 2.0 Beta 2 mit vielen neuen Funktionen und Unterstützung für fließendes Nhibernate-, One-to-Many- und Many-to-Many-Mapping.

http://www.codeplex.com/Wikipage?ProjectName=nmg

Du kannst es ausprobieren Mindscape NHibernate Designer die in Visual Studio 2010 installiert wird.Obwohl ich es noch nicht ausprobiert habe.

Ein kommerzielles Tool hierfür ist Visuelles NHibernate. Bitte beachten Sie, dass ich für Slyce Software arbeite, das Unternehmen, das Visual NHibernate erstellt.

Aktualisieren: Visual NHibernate ist jetzt Open Source.Sehen: die Ankündigung

Die erste Frage, die Sie sich stellen müssen, ist, warum Sie überhaupt einen Generator benötigen.Ehrlich gesagt ist das Schreiben von HBM-Dateien meiner Erfahrung nach überhaupt nicht schwierig.

Davon abgesehen sollten Sie vielleicht einen Blick darauf werfen, wenn Sie die HBM-Dateien wirklich nicht schreiben möchten Aktiver Rekord.

Ich habe einiges über fließend gehört, es aber nie genutzt, daher kann ich es nicht sagen.Haben Sie Ihr Intellisense für die HBM-Dateien eingerichtet?Ich schreibe nur meine eigenen XML-Dateien, aber ich weiß, dass das nicht das ist, wonach Sie suchen.

Was würden Sie von SQL-Skripten erwarten, nämlich das Generieren von Tabellen?Eine der Schönheiten von NHibernate ist die direkte Abfragegenerierung, sodass Sie nicht für alle Ihre Objekte SPs erstellen müssen.

Schauen Sie sich den NHibernate Designer von Devart an: Entitätsentwickler für NHibernate

Notiz:Devart Company.

Ich habe beides ausprobiert, NConstruct Lite und Codesmith.Ich musste das Objektmodell aus einer vorhandenen Datenbank für ein vorhandenes asp.net-Projekt abrufen, das in VB geschrieben wurde. Dies ist meine Erfahrung:

Nachteile von Codesmith:

  • erkennt keine Vererbung zwischen Tabellen
  • bildet keine Datenbankansichten ab
  • komplexe Nutzung

Codesmith-Profis:

  • generiert c# und VB
  • Unterstützung für viele DB-Engines, einschließlich PostgreSQL
  • Visual Studio-Integration

NConstruct-Nachteile:

  • generiert kein VB, nur C#
  • wenige DB-Engines, nur SQL-Server, Oracle und MS-Access

NConstruct-Profis:

  • Karten für Ansichten
  • erkennt automatisch einige Vererbungen (für 1-1-Beziehungen)
  • einfach

In meinem Fall hat NConstruct etwa 60 % der Arbeit für mich erledigt.

Ja, das Schreiben von HBM-Dateien ist sehr einfach.

Allerdings ist es ein großer Schmerz, wenn Sie eine große Datenbank haben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top