repository pattern implementation using ADO.NET