Once you get familiar with ORM's you will "Love or Hate" the idea.
For a new project I write I decided to use once more an ORM Tool. There are so many ORM's outside there and because I develop it only in .Net C# and I love the idea for open source I decided I only go for an open source object relational mapper.
Microsoft comes out with some stuff called "Linq to SQL" and "Entity Framework". I could find lot of information about it but in the end I could NOT find a really working solution which is based on a n-tier architecture. Since my point of view is that applications are also applications which are based on different tiers or models I'm not satisfied with this "0815 / drag & drop" Microsoft solutions which are done in 5 minutes.
An application has to be divided into various tiers. Lets say it simple:
- Data Access Layer
- Business Object Layer
- Presentation Layer
if you need more well done but I prefer a clean architecture instead of one Website Project which contains a mix of anything. Can be that for other people it is good enough. Anyway, enough about my personal point of view.
Following criteria are important to me:
- Perspective on Performance
- Perspective on Data-source independence - access various data-sources SQL Server, OBDC etc.
- Perspective on Lazy Load of parent entities
- Perspective on Pluggable Creation Mechanism
- Perspective on Separation Of Tiers And Layering Preferences
- Perspective on Transactions Control
- Perspective on Mapping (1:1, 1:N, N:M)
- Perspective on Query Facilities
- http://www.ornetmapper.com/contact.aspx - Problems to generate ASP.Net Membership Tables needed to adapt code for creating first samples.
- http://www.codeplex.com/crudcodegen - Console application and doesn't display errors
- http://www.codeplex.com/IrisGenerator/Wiki/View.aspx?title=Quick%20Start&referringTitle=User%20Guide - Very nice UI but it throws an exception upon creation, after downloading the solution from codeplex I was not able to compile the solution.
- http://www.codeplex.com/ZFCGDAL - It's a Mygeneration Software Template. I loved to work in past with MyGen but the template Ver 2 does not work for some reasons.
- http://www.codeplex.com/affinityorm - It's only an attempt, currently it display tables and data but not more then that.
- http://www.codeplex.com/mitadata/ - Only contains a test project, not usable
- http://www.codeplex.com/LazyFramework/SourceControl/DownloadSourceCode.aspx?changeSetId=15856 - VB.Net - doesn't match my requirements.
http://www.codeplex.com/netopenfwk - Don't get what this should do with ORM.
http://www.codeplex.com/DbEntry - A huge framework and sample applications are available but how do I generate code I don't know - http://www.codeplex.com/Sculpture - Amazing Model Driven approach - you have to watch screen casts!!!!!
- http://www.codeplex.com/jmr - not active since aug. 2007
- http://www.codeplex.com/autodbupdater - Its not an ORM Mapper (DbUpdater keeps a simple record of all scripts that have previously been run against a database and which 'version' of the database each script was run against)
- http://www.codeplex.com/normal/SourceControl/ListDownloadableCommits.aspx - not active since dec. 2007 - download is not compilable
http://www.codeplex.com/worm - Web ORM - a mix of C# and VB.Net - no clue where to start. - http://www.codeplex.com/nanomapper - Very nice and simple but it would need extensions e.g. save xml schema and selection of tables which have to be generated.
- http://www.codeplex.com/SimpleDAL - started project need to check in some months agian
Notice: if you have an actual ORM mapper which is not listed above post them please (Only Open Source Projects please and no shareware - comments with links to shareware application will not be approved!!).
No comments:
Post a Comment