Quote Originally Posted by gwboolean View Post
I get the idea that you believe that having a function or method that is located in a class/module and used by many different methods from many different locations is a bad thing and screws up processes.
That's not the idea at all. A dedicated Data Access Layer is a good thing. The problem is that so many of them are poorly implemented. It's the implementation that is the issue in this case, not the principle. For instance, a well implemented DAL would not have a Shared property of type DataTable that contained the results of every query. It would have an instance method that returned a DataTable when called.