Hello,
is this a common and/or good approach?
In my ViewModel(Wpf) or Presenter(WinForms) I do this:
ICustomerService customerService = MyService.GetService<ICustomerService>();
ICustomerList customerList = customerService.GetCustomers();
the CustomerService class looks like this:
public class CustomerService : ICustomerService
{
     public ICustomerList GetCustomers()
     {
        return _customerDataProvider.GetCustomers();
     }
}
public class CustomerDataProvider()
{
    public ICustomerList GetCustomers()
    {
       // Open SQL connection,
       // get back a SqlDataReader and iterate it
       // in the loop write all data into a ICustomer object
       // add the ICustomer object to the ICustomerList
       // return ICustomerList object... 
    }
}