Je suis un peu curieux de savoir ce que l'expérience d'autres développeurs de l'application du modèle de Référentiel lors de la programmation en ASP.NET MVC avec Entity Framework ou NHibernate. Il me semble que ce modèle est déjà mis en œuvre dans l'ORM eux-mêmes. DbContext
et DbSet<T>
dans le Cadre de l'Entité et par l' ISession
dans NHibernate. La plupart des préoccupations mentionnés dans l' Repository
modèle que catalogués dans POEE et DDD - sont assez adéquatement mises en œuvre par ces Formulaires. À savoir ces préoccupations sont,
- La persistance
- OO Vue des données
- Logique D'Accès Aux Données De L'Abstraction
- Requête D'Accès Logique
En outre, la plupart des implemententations du modèle de référentiel que j'ai vu suivre ce modèle d'implémentation - en supposant que nous sommes le développement d'une application de blog.
NHibernate mise en œuvre:
public class PostRepository : IPostRepository
{
private ISession _session;
public PostRepository(ISession session)
{
_session = session;
}
public void Add(Post post)
{
_session.Save(post);
}
// other crud methods.
}
Entity Framework:
public class PostRepository : IPostRepository
{
private DbContext _session;
public PostRepository(DbContext session)
{
_session = session;
}
public void Add(Post post)
{
_session.Posts.Add(post);
-session.SaveChanges();
}
// other crud methods.
}
Il me semble que lorsque nous utilisons l'Orm - tels que Nhibernate ou Entity Framework pour la création de ces référentiel de mise en œuvre sont redondantes. De plus, depuis ces patron des implémentations ne fait pas plus que ce qui est déjà là dans le ORM, ceux-ci agissent plus que le bruit qu'utile OO abstractions. Il semble en utilisant le modèle de référentiel dans la situation mentionnée ci-dessus n'est rien de plus que développeur d'auto glorification et la plus faste et cérémonie, sans aucune réalisation technique des prestations. Quelles sont vos pensées ??