This is the data access layer I used to use in my C# days before Entity Framework came out and before I started working more with noSQL data stores.  It’s great at hitting relational data stores when you’re willing to write the SQL for it.