Please see my previous article 'Generic 'T, K' Database Component' written on December 17, 2005. In that article, I discussed why, I built this component as a generic<T, K>.
What I did not discuss is how the component changed from a code/design point of view while not changing in my original intent.
- I wanted to cut down on the lines of code.
- I wanted to use generics and see where it would take in while writing a database component.
- I wanted to see if using generics for something other then array/collection pushing/popping was even reasonable.
What I found was:
- Generics will change the way we do things.
- Generics will change the way we think about writing re-usable components.
- Generics got me re-excited about development.
- Power...generics opens the door to a new future.
Point of interest in the code and within the solution:
- In the SqlCommand object, I use the SqlCommandBuilder.DeriveParameters because I hate embedding stored procedure variables in code. Embedding stored procedure variables, etc., in my book, tightly couples my layers too closely to my code. What does that mean...change a stored procedure, you have to change code.
- I added the update for Typed DataSets because I could. 99% of the time, I use stored procedures so I use either one of the creates where I pass in the SQL statement/stored procedure.
- The Interface is not completed here in this version.