1.0.6 - Release Notes

Topic updated 16-3-2007

Before you install:

The setup installs NHibernate 1.2 so if you are planning to keep working with NHibernate 1.0.2

       Make backup of your NHibernate directory (program files\Nhibernate)

ASP.NET Projects probably will load with problems (on certain cases) so make sure you:

       Made a backup of all your projects

       You must manually add the NHibernate App Config Template. This is required if you are planning to use Nhibernate 1.2

 

GenWise IDE

Fixed error while removing Nodes from the trees. This could happen while closing a project , closing the IDE or deleting/removing items. Was not happening all the time, only on very specific cases.
Fixed issues with invalid References. An invalid reference could happens when for example a dll was explicitly added to the project and the removed. Project References referring to a non-existent file where giving several different problems inside the IDE.
In the tool / options (configuration) XML configuration classes created inside Template Assemblies where not correctly shown. For example, now you can see the new UI for configuring the 3rd Party component paths (NHibernate, NUnit, etc).

clip0007

 

Template Validation Model

Originally the GenWise validation model only had Errors. This "seemed" in the original design to be good enough, but reality shows us otherwise. Therefore the validation model has been expanded with : Messages and Warnings (errors where already present).

 

 
Source Editor

New / completely refactored Source Editor .
Please read Source UI Documentation and Source Editor BLOG enty
If orphans CodeBlocks are present in an Item it was impossible to copy/paste it;s code. Now there is a context menu option for this.
Fixed NullException when working with the codeblock trees.
when removing the last orphan codeblock now the tree updates correctly.
Only top-level orphan codeblocks where shown so orphans on child templates where not shown (and icon also did not reflect that fact). These orphans where still persisted/loaded in the project xml file.
Removing orphan codeblocks also works correctly.

 

Oracle

Check Script now also available for Oracle.
Check scripts now generate correct SQL for composite keys (the original query was not correct for this cases).

 

Template Options UI

It could happen that if you click (using the mouse) while editing an option an exception (error report) appear. This was not always but it happened quite often if the templates options where "docked" for example when used with the WFD (Web Form Designer).

 

NHibernate Templates

Huge change in the GetAll methods to take a ICriteria instead of taking List<ICriterion> . This was an extremely important change to be able to define in the process what retrieval strategy (what relations to include, etc) in the process and not inside the factory itself.
NHibernate 1.2 Support !!

       We have remove support for 1.02

       

IMPORTANT NOTE: If you use 1.2 you need to make sure that if you add "custom code" in the POCO class make sure that those members (properties, etc) are virtual.

 

Standard .NET Nullable Types : No need any more to generate custom types. We can now use .NET nullable types with 1.2
CustomViews now uses ICriteria projection features.
Improved XML mapping to take advantage of the not-found = ignore feature. (needed for composite foreign keys with 1 nullable column in the relation..)
Fixed issues with OneToOne scenario.
Fixed problems with Master/Detail

 

App.Config Template (new)

This new Template has 2 main  goals:

Allows the template to write special configuration code like for example assemblyBinding information.
Allows you to define in a simple way Application settings (appSettings)

The first case is used by the template to automatically locate the best reference for a given assembly. This is required when using NHibernate 1.2 with certain databases (Oracle, firebird, mysql) and GenWise automatically searches in the GAC what's the best assembly to use. As shown below, this technique uses AutoCalculated Template options so it means you can always override the calculated value if it does not please you.

clip0008

 

ASP.NET Templates

Fixed error message box that was incorrectly appearing when trying to copy the hibernate.config file. This file is not always present since we have an option in the BO-Layer to use programmatically configuration as an alternative to XML configuration.
ERS#2710 : Project Loading Error . Working in the WFD could cause that the project could not longer be loaded back.
ERS#2708 : Deleting a textbox from the Edit Template in a Form Template configured to use FormView would raise an exception.
Small Typo: return instead of "return" in the tooltip for the cancel template tooltip.
ERS#2765 : (New Feature) Wizard allows to configure the amount of properties to create.
Added validation to the filters to avoid errors while generating IF the relation is not longer there or if the selected datasource has NO relation with the datasource being filtered.
IMPORTANT: All datasource Templates now generate the code using the new API in GetAll. So they create the criteria and pass it to the factory. Therefore each template (datasource template) has it's own GetCriteria() method where the path gets constructed.
ERS#2749 : The Select template should always be inline independently from the Wizard action location. Before, selecting ActionLocation == below is creating invalid templates.
ERS#2761 : Cannot add any custom methods to the WebUtils class. Whenever I add code to any of the appropriate insertion points for adding a method this just disappears.
QuickStart : improved that the output folder is different for each project. Now the output gets generated into an Output folder and each project goes beneath with it's own folder. All used names can be configured in the configuration object for this template ( Tools / Options / Templates / ASP.NET / Web Application / QuickStart )
Lookup Template : fixed problem that property templat title was not moved into the label text (only in formview mode).

       

 

Security Templates

ERS#2721 : The Security templates could raise an exception if the implementation type was changed to "Use BoLayer" and inmediatelly go to the role provider and generate the item. (other similar steps would also make it fail).Basically, the ROleProvider and the Membership provider did not revalidate after changes in the security template. ( ArgumentNullException pDataObject )
Added extra validation: The RoleID can not be an Auto Numbered column. The provider needs to be able to SET it;s value and auto-numbered do not have a setter.

 

DropDown Templates

Feature: the DropDown template now can also be used with Entities that only have composite unique keys. Previously a unique not composite key was required.
Fix: If a Form contained a Nested dropdown case and change was used it could given an exception because the Automatic filtering was done using the related dropdown as input for the filter. this was not a good idea since the dropdown could be not yet bound to it's datasource. Now a nested dropdown actually uses the form main object (BO) property.

 

MsBuild Template

Feature: Improved to be able to handle Files that are not "cs" files but should be included in the project. An example of this case is the App.Config file.

 

WEB Form Designer

Fixed problem where HTML code could not be deleted from the Source Editor.
Fixed several problems with corruption of the designer (HTML).
Improved order of controls when drag&drop a Control Template. (now it uses the order of the template to place the controls in the canvas).
Fixed problems with losing UserCodeblocks
Fixed thread issue with Toolbox (when closing multiple WFD).
Fixed issues when closing the WFD.
Improved how each WFD owns it's own commands. (before 1 command instance was shared between different WFD instances).