Jonas Blunck pointed me in the direction of this document.  After a quick read I agree it is worth the read.

.NET Data Access Architecture Guide

Summary: This document provides guidelines for implementing an ADO.NET-based data access layer in a multi-tier .NET-based application. It focuses on a range of common data access tasks and scenarios, and presents guidance to help you choose the most appropriate approaches and techniques.