I don’t know how long it’s been since I wrote my last Data Access Layer or piece of SQL Code, it certainly has been too long to even remember. Since then I’ve used a number of ORMs (Object Relational Mappers) or/and DAL Code Generators to perform all the tedious data access manipulation I needed.
The ones I’ve used are
LLBGen : Unfortunately this free version stop evolving a long time ago (since .Net framework 1.1) and became a commercial solution,
Olero’s ORM.Net : Which was my favorite Open Source (GPL Licensed) ORM, although it didn’t support Generics and all the nice stuff .Net 2.0 brought us.
Lately though I’ve been experimenting with SubSonic the zero code DAL as they call it and I must say I was Impressed with its simplicity, flexibility and extensibility. At last this open source ORM supported Generics and it was designed with .Net Framework 2.0 in mind. Then only problem was that it supported only ASP .Net 2.0 applications when I needed something that would not only be useful for Windows Forms Applications but something that could be used on Windows Presentation Foundation applications as well [with little or preferably no modifications].
So after studying and re-engineering the code, I’ve created a “fork” on Subsonic ‘s releases that will not only support Windows Form Applications but also the new INotifyPropertyChanged interface and ObservableCollection class of Windows Presentation Foundation so that I can easily bind data objects to my WPF forms.
I now have to do some testing before publishing the code and Officially announcing the release (using project’s codeplex space), so stay tuned if you’re interested…