Entity Developer for NHibernate, being the best NHibernate designer to-date, allows you to create NHibernate models fast in a convenient GUI environment.
Devart has almost ten-year experience of developing visual ORM model designers for LINQ to SQL and Entity Framework and there is a number of satisfied LINQ to SQL and Entity Framework developers that use Entity Developer. Our extensive experience and skills have become the soundest cornerstone of our NHibernate designer.
Model-First, Database-First, or Mixed
With our NHibernate designer you can use either Model-First or Database-First design approach, or you may mix them in any way you like. Easy-to-use Update From Database and Update To Database wizards allow you to synchronize your model and database in any directions at any moment.
Update From Database Wizard tries to preserve manual changes to the model where possible. The Update From Database and Update To Database wizards detect all the database changes that can affect the model and vice versa, e.g. created and deleted tables and views, their columns and foreign keys, column datatype changes, etc.
All changes are displayed in an easy-to-understand form, and you can select only a part of the changes to apply. When updating database schema, Entity Developer considers database server specificity. It does not try to perform unsupported operations.
Tweak the Database-First Settings
When using database-first approach, Entity Developer for NHibernate provides a number of options for creating a model. You may tweak naming rules for the generated names of the classes and their members. Entity Developer allows you to configure case and pluralization, removing and adding of prefixes and suffixes, etc.
After this you may set the default parameters for the generated classes: default assembly and namespace, default schema, cascade style, strategy for accessing a property value, default identity generator and its parameters, etc.
Create Database-Independent Model
By default all the schema information is saved in the model mapping and this model can be used only with the database server of the database which the model was created from. If you need to use this model later with other database servers, you have to turn off preserving SQL type and default values. Other column parameters, such as length or scale and precision, will still be preserved, and Entity Developer can create a schema for any supported database server for this model.
If you don't need to store the schema information in your model, you may turn off preserving column details completely. Entity Developer still can create a schema for such model, based on naming rules, NHibernate types, and default settings, however this schema may differ from the one, the model was generated.