Database access options in .NET:
- Plain ADO.NET and DataSets
See The SQLCommandBuilder is way Better than its Reputation.
- Create a custom simple ADO.NET data access wrapper
Provider independent using System.Data.Common
- Microsoft Enterprise Library, Data Access Application Block (DAAB)
Can be used separately (without the rest of the EL, which is over-engineered for many applications).
- OData (WCF Data Services)
This old article still is the best intro to WCF Data Services
- WCF RIA Services
- ADO.NET Entity Framework
Finally there is a beta of the Oracle EF provider available:
ODAC 184.108.40.206.30 Beta for Entity Framework and LINQ to Entities
A new SQL oriented approach. Strongly disliked by O/RM purists.
“…Easy-to-use database access component not requiring lots of boilerplate ADO.NET code or a pre-generated ORM model. Inspired by Ruby’s ActiveRecord and DataMapper gems.”
the micro-ORM that poweres StackOverflow.
“Massive is a “wrapper” for your DB tables and uses System.Dynamic extensively”
For Dapper and Massive hear Hanselminutes podcast The Rise of the Micro-ORM.