O/R Mapper Recommendation

  • Thread starter Thread starter Fregas
  • Start date Start date
F

Fregas

I'm the lead developer at my company and i'm looking into O/R Mappers
again. I've used LLBLGen and Wilson ORM and played with some others.
I prefer WORM because of its simplicity and the fact that its basicly
open source, but it has some limitations and code generation/update is
very limited. I liked LLBLGen's but found using it kind of complex.
Does anyone have any other suggestions? Is there something new out
there? Some features I would really like to see:

-Code (Re)Generation from a database, but with the option to code by
hand if necessary.
-Fields/Properties need to have the option of being Read only,
Protected, Private, etc.
-Define relationships when there is no foreign key defined in the DB.
-strongly typed queries
-A good UI to create and maintain/update the mapping from database
changes, similar to what IdeaBlade and LLBLGen have.
-A good price. It doesn't have to free per se, but we're small and
can't dish out $5000 per developer. I also don't want to deal with
license files, royalty fees, activation etc. This slows down or
complicates deployment.
-The ability to call stored procs or custom sql if necessary and return
either business objects, datasets or readers.
-Must support .NET 2.0 - nullable types, generics, etc.

I appreciate any suggestions you guys have.
 
nhibernate possibly with castle project's active record implementation? :)

I'll second NHibernate - it's free, it's open-source, it's based on
very mature and reliable Hibernate technology, and it does the mapping
between objects and tables in an external XML file which helps make
things easier to manage and maintain.

http://www.hibernate.org/343.html

Marc
 
Hi Fregas,

I'm the author of ObjectMapper .NET. It's an open source O/R Mapping
Tool based on the GPL License. The ObjectMapper .NET can deal with
Oracle, SQL Server, Microsoft Access and even Windows CE. Furthermore
you can use generics and all the stuff you want to do.

You can download the newest version of the ObjectMapper .NET at
following site: http://www.objectmapper.net

If you want to have some deeper informations you can look at my blog at
http://blog.objectmapper.net

The ObjectMapper .NET can handle most things you described within your
feature request list. If you have any questions you can email me.

Hope I could help you.
Cheers

Gerhard
 
Fregas said:
I'm the lead developer at my company and i'm looking into O/R Mappers
again. I've used LLBLGen and Wilson ORM and played with some others.
I prefer WORM because of its simplicity and the fact that its basicly
open source, but it has some limitations and code generation/update is
very limited. I liked LLBLGen's but found using it kind of complex.

Which version did you use? We've updated it quite a bit since its
first version.

We can help you out with the problems you have with LLBLGen Pro,
please contact me via our support channels: either our helpdesk system
or our forums or via support AT llblgen.com
Does anyone have any other suggestions? Is there something new out
there? Some features I would really like to see:

-Code (Re)Generation from a database, but with the option to code by
hand if necessary.
-Fields/Properties need to have the option of being Read only,
Protected, Private, etc.
-Define relationships when there is no foreign key defined in the DB.
-strongly typed queries
-A good UI to create and maintain/update the mapping from database
changes, similar to what IdeaBlade and LLBLGen have.
-A good price. It doesn't have to free per se, but we're small and
can't dish out $5000 per developer. I also don't want to deal with
license files, royalty fees, activation etc. This slows down or
complicates deployment.
-The ability to call stored procs or custom sql if necessary and
return either business objects, datasets or readers.

in V2.0 we added support for using procs to fetch entities, fetch
resultsets (also procs) as datareaders, project them onto
classes/datatables/entities etc. This besides the already available
support for procs.
-Must support .NET 2.0 - nullable types, generics, etc.

added to v2.0 as well :)

Frans

--
------------------------------------------------------------------------
Lead developer of LLBLGen Pro, the productive O/R mapper for .NET
LLBLGen Pro website: http://www.llblgen.com
My .NET blog: http://weblogs.asp.net/fbouma
Microsoft MVP (C#)
------------------------------------------------------------------------
 
Sorry Frans, I don't think we're going the LLBLGen route at this time.
However I HAVE followed your product a bit, and it seems like it has
improved a lot since I last used it.
 
I actually HAVE been leaning in the NHibernate direction since its
O.S., free and has a that Java background. Guys, is there a good UI
for it?
 
-Code (Re)Generation from a database, but with the option to code by
hand if necessary.
-Fields/Properties need to have the option of being Read only,
Protected, Private, etc.
-Define relationships when there is no foreign key defined in the DB.
-strongly typed queries
-A good UI to create and maintain/update the mapping from database
changes, similar to what IdeaBlade and LLBLGen have.
-A good price. It doesn't have to free per se, but we're small and
can't dish out $5000 per developer. I also don't want to deal with
license files, royalty fees, activation etc. This slows down or
complicates deployment.
-The ability to call stored procs or custom sql if necessary and return
either business objects, datasets or readers.
-Must support .NET 2.0 - nullable types, generics, etc.

I appreciate any suggestions you guys have.

You sure do want a lot for free. You mention IdeaBlade (DevForce
application framework). That is what we use. IdeaBlade doea have an
express version that is free. It is licensed only for Sql Server and
has some other limitations (no business objects server).

We use the for-pay version (enterprise) and it is well worth the money.
It does far more than OR mapping, though it does that very well. To me,
the help with data-binding is just as important. .Net databinding,
though better in 2.0, is still quirky and stronger at demos than
production use. And DevForce gives you lazy instantiation/data caching,
a Business Object server (if you need one), security hooks, 3rd party
control suite integration (DevExpress is particularly good), dynamic
properties, etc.

Their architects came from the Java enterprise app world, too. So they
are very familiar with the problems associated with distributed object
systems.

DevForce is getting better at a good pace, too. There are some key
feature upgrades about every 6 weeks or so. The documentation is mostly
good. There are a few holes, but what is written is better than almost
anything I have ever seen. There are useful tutorials and examples,
too. Their tech support is top notch.

I think their price would be lower if they didn't have their office
(and employees) in the crazy-high-rent San Francisco area. I told them
to move to Kansas or something, but they haven't complied...

Bottom line - we know that we saved at least 50% of development time up
front b/c of not having to do all the plumbing code (and that's
assuming we got it right the first time). And the DevForce method of
regenerating the ancestor class code makes adding a field or two to the
database and object almost trivial. Developer time costs money, too.

I will toss out one more option - CSLA. This is an open-source
framework written mostly by Rocky Lhotka from Magenic. He has written a
book on it, too. CSLA is a more "pure" object solution to the OR
problem. I thought it was too complicated to learn and implement for
our small shop. And DevForce uses many of the same concepts - you just
don't have to build (and maintain!) them yourself.
 
I will toss out one more option - CSLA. This is an open-source
framework written mostly by Rocky Lhotka from Magenic.

It's a framework and it's free and it's great, alright, but it's NOT
really an O/R mapper at all - it's a distributed objects communication
thingie, more than anything else, no? You could combine it with any
O/R mapper mentioned here before to create a great system.

Marc
 
I am totally happy with Fran's LLBLGenPro 2.
You should really take a look at v2 if you haven't already.
 
I'm not a big fan of CSLA. I've used it on 3 projects.

Why? What is it you didn't like about CSLA ?

Marc
 
nHibernate does not support StoredProc (At least the version we tested).
How about Vanatec OpenAccess. It's not cheap but worth a check.
Barry
 
Miha said:
I am totally happy with Fran's LLBLGenPro 2.
You should really take a look at v2 if you haven't already.

I agree on LLBLGenPro, it has quite a high learning curve, but
absolutely worth it. I just think Frans should change the name to
something more simple :)


Wiebe Tijsma
http://www.e-office.com
 
Wiebe said:
I agree on LLBLGenPro, it has quite a high learning curve, but
absolutely worth it. I just think Frans should change the name to
something more simple :)

Thanks! :)

Yeah, the name is original coming from my open source dal generator
LLBLGen, which was a big success, totally unexpected. When we decided
to rewrite it from the ground up and make it a commercial tool, it was
a no-brainer to re-use the name as it's a tool for the same audience
and the original name was alreade well known.

Indeed, the name could have been better hehe :) I'm no longer allowed
to cook up new names for tools we release ;).

FB

--
------------------------------------------------------------------------
Lead developer of LLBLGen Pro, the productive O/R mapper for .NET
LLBLGen Pro website: http://www.llblgen.com
My .NET blog: http://weblogs.asp.net/fbouma
Microsoft MVP (C#)
------------------------------------------------------------------------
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Back
Top