Desde Asp.net 2.0, existe el Modelo de Proveedor. En el detalle de la implementación, un proveedor es una clase derivada de ProviderBase que es una clase abstracta en lugar de una interfaz, pero de todos modos el Modelo de Proveedor está ahí para que podamos tener una implementación diferente para intercambiar la salida simplemente editando el web.config. Por ejemplo, si crea una aplicación de blog, puede tener un BlogProvider: ProviderBase, luego puede tener implementaciones de BlogProvider como: SqlBlogProvider, OracleBlogProvider e incluso MockBlogProvider para probar.¿Es el patrón de repositorio el mismo que el modelo de proveedor Asp.net?
Ahora, el Repository Pattern se está volviendo popular, y creo que es para satisfacer la misma necesidad, aunque en los detalles de implementación, normalmente usa interfaces, por lo que IBlogProvider, e inyectaría implementaciones diferentes mediante constructores en lugar de propiedades, pero esencialmente no veo la diferencia en lo que estos 2 patrones nos dieron.
Personalmente, creo que el modelo de proveedor es más natural para mí en la implementación. Entonces, ¿hay alguna diferencia entre ellos o son exactamente lo mismo con diferentes nombres dados por diferentes comunidades?
Agradecería cualquier comentario sobre esto, Gracias, Ray.
Una explicación similar a la respuesta aceptada a continuación http://forums.asp.net/t/1649824.aspx?Provider+Model+vs+Repository+Pattern –