In my current project i have made some DAL ( Data Access Layer ) class in my framework which has some purpose for handling many project needs such as :
1. Able to provide multiple connection string in my project
2. Able to provide the multiple datastore string with many provider
3. Should be able to handling many application parameter response redirect
see the picture below of my class design :

I put the all of my engine application in Framework layer project including the Data Access utility, wheter contain :
a. ConnectionString Class :
- This Class has purpose and duty to serving the connection string and provider name which will be consumed by the Query Builder class. In this class i set the Connection to database namespace and also i made inherit the web base class for accessing the web base class page property and method in the future utilization.
- Why i must inherit from the page base class, in this project framework i need to access the ApplicationID property which catered by the page base class wheter all of web page should inherit from this base class.
- After the initialially web page loaded in this case the default.aspx, there is an automatically fill the ApplicationID property in base class which consumed from the url parameter. Actually there is still need the decrypt class which serving for securing the parameter from URL but later i will create for this purpose.
- This class has 2 methods which will cater the connection string and provider name the mthods are GetCN which return on string and either for GetPV.
b. Query Builder Class ( Interface Class )
- This is sound of interesting part from the whole stories, this class has a duty for catering the automatically object parameter, object connection and the type of the sql command.
- Therefore this class has an may important part method that execution in any output parameter method such as execute the dataset return,data reader return,execute scalar return in integer and also add parameter method for processing the parameter input to this class.
- This Class has three kind overload method which catering the text string query, the stored procedure type of query which will be implemented in DAL project later.