After going through some tutorials on asp.net mvc the repository pattern came up and the example was with one table, the dinners table. Basically the set up was to create an interface and then a concrete class which implemented the interface and program off the interface in the controller class. The Interface has your typical crud methods. Does an interface for each type have to be created if you are going to use this pattern. For instance there was a GetList method with a Dinner type. What if you have 10 different types that you need to perform crud functionality on? does this mean 10 interfaces with 10 concrete classes just for the benefit of being able to switch the db technology down the road? I am trying to figure out how to apply this pattern to a standard 3 - tier architecture (Object Layer, Business Logic Layer, Data Access Layer).
Thanks.