you would be amazed how long ago that was, just have been using a different ORM (XPO) for a long time. It gives you full control over your transactions. Also you "know" when objects are loading from DB so you don't do validation code of your setters when re-inflating your objects. :^) I don't want to do any Bill (err Steve)Bashing; MS is doing some great stuff, also with the EntityFramework. But if the effort that went into auto-naming the database had gone to validation & transaction management I would be happier I think :)