I want to talk about how to create connections to the database in the middle tier. I could simply write a new connection in every method, however I will be reading from a constructor string in order to make it easier to point to a different database. This would require me to alter every components constructor string. The current solution is one component that accepts all of the stored procedure parameters in one array and builds a querystring on the fly, then executes and returns the disconnected recordset. This options seems to be really bloated. I just wanted to know what others are doing in the middle tier.