J'ai un référentiel qui doit s'adapter à tout type de source de données.
Cela inclut certains types de services Web, de bases de données (utilisant ActiveRecord et NHibernate) et même des fichiers plats.
Pour ActiveRecord j'ai EnumerateQuery(IActiveRecordQuery query) qui renvoie un IEnumerable
juste comme j'ai besoin mais l'interface est non documentée.
Que fait-il exactement? Comment l'utiliser?
Puis-je l'utiliser pour étendre ma fonction Fetch() pour accepter d'autres sources de données? Puis-je l'emballer avec ma propre classe afin d'accepter d'autres sources de données?Généraliser une fonction Fetch() pour les sources de données
0
A
Répondre
1
J'utiliserais plutôt IQueryable comme une abstraction. Faites en sorte que votre IRepository implémente IQueryable, puis le référentiel ActiveRecord délègue à Castle.ActiveRecord.Linq, le référentiel de fichiers plats sera implémenté en utilisant LINQ to XML, etc.
Questions connexes
- 1. comment généraliser une fonction de clic dans jquery
- 2. Généraliser une méthode d'extension pour fonctionner avec tout type
- 3. Comment restaurer les sources de données pour les rapports TFS?
- 4. Sources de données brutes
- 5. Mappeur EDI x12 pour les sources de données d'objet C#
- 6. Généraliser la requête LINQ?
- 7. En utilisant différentes sources de données pour différentes configurations SSRS
- 8. Sources de données et NSTableView
- 9. Une bonne façon de configurer les transactions au printemps pour différentes sources de données?
- 10. Généraliser un algorithme qui doit travailler sur les différents membres de données
- 11. Sources de données dans asp.net
- 12. C# Sources de données d'objet
- 13. Curl/Fetch question - Referer, les données post, Cookies
- 14. Quels sont les exemples de sources de données non-transactionnelles?
- 15. données iPhone Core se bloque sur FETCH
- 16. Quelles sont les bonnes sources pour les données de signatures de virus?
- 17. Recevoir les données UDP provenant de sources multiples dans Matlab
- 18. Erreurs avec des sources de données volumineuses
- 19. Comment gérer plusieurs sources de données?
- 20. Fetch Seulement les prix les plus bas?
- 21. Sources en ligne pour les styles XAML
- 22. Recherche de bonnes sources pour les icônes, les illustrations, etc.
- 23. GridView avec plusieurs sources de données
- 24. Quelles sont les bonnes sources en ligne pour les ensembles de données?
- 25. Test des sources de données dans les tests unitaires Android
- 26. Fonction n'est pas définie, pas charger les sources jQuery
- 27. Quelles sont les principales raisons d'utiliser JNDI pour les sources de données?
- 28. C# tabindex - généraliser (application de bureau)
- 29. écrire une fonction de similarité pour les images pour les données de cluster
- 30. Un gridview - deux sources de données?
Mais qu'en est-il de DetachedCriteria? –
@the_drow: si vous exposez DetachedCriteria dans votre abstraction, vous êtes déjà lié à NHibernate et c'est vraiment une abstraction qui fuit. Si vous avez vraiment besoin de rendre votre référentiel indépendant de la source de données, IQueryable est le chemin à suivre, c'est pour cela qu'il a été construit. –
Oui, le problème est que mes requêtes sont déjà écrites avec DetachedCriteria. Ai-je besoin d'utiliser des génériques à cette fin? –