Référentiel et les objets de requête de répétition. Comment mettre en œuvre des requêtes complexes

J'ai lu beaucoup de posts du modèle de référentiel, mais il ya quelques problèmes pratiques qu'ils ne semblent pas résoudre ou de les expliquer. C'est ce que je comprends sur ce deux modèles:

Le référentiel et le modèle de requête sont complémentaires: objets de Requête représente la logique métier (OÙ clausules) et le modèle de référentiel a un Get(IPredicate) méthode qui prend un objet de requête et retourne un SELECT OÙ le résultat

Le référentiel ne doivent pas avoir une logique d'entreprise: Toute la logique métier doit aller sur les objets de la requête

Actuellement, j'ai une classe qui encapsule chaque objet logique (qui est presque toujours une seule entité de l'objet) qui implémente plusieurs "Obtenir" des méthodes qui mettent en œuvre des requêtes plus complexes (jointures, groupBy, etc...), ce n'est pas un bon modèle, car les classes ont tendance à croître beaucoup à cause de code réutilisable pour les requêtes semblables et de ses méthodes publiques sont dépend du contexte que cette classe sera utilisée, donc, ce qui rend cette classes inutilisable pour de multiples projets qui repose sur la même base de données, ce qui est mon objectif principal de ce projet de refactoring.

Comment les requêtes qui sont plus complexes que d'une sélection unique OÙ sont mis en œuvre avec ces deux modèles, sans fuite de la logique métier dans le référentiel?

Ou si cette logique d'entreprise ne rentre pas dans le référentiel, ni les objets de la requête
d'où vient cette logique d'ajustement?

Grâce

Merci, ce n'est pas ma première langue, je vais corriger la question

OriginalL'auteur rafael | 2015-03-17