I’m scurrying at lunch to finish reviewing some architectural guidelines for the P&P group (I’ll be done today, I promise). I stumbled across a section with the same title as this blog post. I’ll answer the question concisely:
Pull an existing persistence tool off the shelf, make sure you understand it, and code, code, code! Persistence coding is a commodity in this day and age, so just use and existing tool and get on with your project. It’s extremely unlikely that there’s any business advantage to writing data access code by hand when there are so many existing tools out there. I’ll repeat this little gem one last time, if you’re writing ADO.Net code by hand, you’re stealing from your employer or client.