Ok, donc je commence juste à nhibernate (en utilisant couramment).Utilisation de nHibernate et du modèle de référentiel, besoin d'une direction
Une chose que j'aime à ce sujet est que je peux utiliser le modèle Repository (lire à ce sujet à partir du blog nhibernate rhino). Fondamentalement, en utilisant des génériques, je peux créer des méthodes qui fonctionneront sur TOUTES mes tables de base de données. J'ai ensuite hérité de la classe Repository et je peux ensuite ajouter des méthodes spécifiques à cette entité.
Lors de la tentative d'ajout d'une méthode Update, quelqu'un a mentionné que le modèle Repository est supposé agir sur les collections? Est-ce que je regarde mal les choses ici? Pourquoi ne puis-je pas créer une méthode de mise à jour?
J'ai essayé d'ajouter une méthode de mise à jour, mais je suis confus quant à la façon dont je vais gérer la session et mettre à jour la base de données?
Je veux un seul endroit pour tous mes accès de base de données pour chaque entité, de sorte que UserRepository aura tous CRUD de base et peut-être d'autres méthodes comme GetUserByEmail(), etc.
Je pense qu'il est trompeur d'insinuer que les motifs de l'unité de travail et du référentiel sont interchangeables car ils résolvent différents problèmes. Je suis familier avec cet article d'Ayende et même si je pense qu'il y a certainement une part de vérité, rappelez-vous s'il vous plaît que c'est juste une opinion, et ne devrait pas être présentée comme un fait. –
ight, mais si vous apprenez NH, commencer avec le modèle Repository (avec rinçage sur chaque appel à repo.Update()) est une mauvaise habitude. Ou vous pouvez finir par écrire un hybride étrange de Repo et UoW qui ressemble à un Repo mais doit encore être vidé, ou passer à côté de la grandeur qui est le UOW déconnecté. Il me semble que Homestead a pris quelques tutoriels, fait ses premiers pas, et va un peu fausse route pour ce dont il a besoin, et quelle est la meilleure façon d'apprendre NH. – mcintyre321
Mais oui, vous avez raison, je l'ai fait sonner comme une déclaration générale. Le modèle Repo est utile dans les bonnes circonstances. J'aurais dû dire "IMO dans ce cas, le modèle Repo est envelopper quelque chose ..." – mcintyre321