2009-02-17 12 views
4

Dans une application à plusieurs niveaux dans laquelle vous utilisez des entités personnalisées, comment gérez-vous la gestion des données requises à partir des tables de recherche? Créez-vous des entités pour chacune de ces tables de recherche ou utilisez-vous une autre stratégie?Conception à plusieurs niveaux, tables de recherche et entités personnalisées

Par exemple. J'ai une table de consultation "Ratings" qui sera utilisée pour remplir une liste déroulante. Souhaitez-vous créer un objet d'évaluation avec une propriété rating et rating et le transmettre à votre interface utilisateur ou y a-t-il un moyen plus efficace de s'y prendre?

Appréciez vos pensées.

+0

"Ce que je recherche spécifiquement, c'est vos stratégies pour mapper une table de recherche existante dans la base de données jusqu'au niveau de l'interface utilisateur." Supposons que nous ayons déjà un ensemble de tables de recherche. " - S'il vous plaît modifier la question pour être précis sur ce que vous avez et ce que vous voulez. –

Répondre

3

Je suggérerais que la solution dépendra de la fréquence à laquelle les données de recherche changent, si elles doivent ou non être modifiables, et si vous appliquez ou non l'intégrité référentielle à la base de données. Je pense que cela rend le schéma plus compréhensible si vous mettez chaque type de recherche dans une table séparée. En règle générale, je ne crée pas d'entités pour chaque table de correspondance, mais charge plutôt la plupart des recherches courantes dans des structures qui sont facilement réutilisées par l'application - pour une application asp.net, par exemple, je vais créer des hashtables ou des dictionnaires ordonnés qui peuvent facilement être liés à la plupart des contrôles Web. Et, horreur des horreurs, je crée parfois un singleton pour gérer l'accès à toutes ces recherches, qui peuvent être stockées en tant que variables statiques ou dans le cache, en fonction des besoins.

0

Nous séparons les différents types de recherche en différents objets. Il semble que ce soit un peu plus de travail à l'avance, mais cela nous donne la possibilité d'apporter des modifications à chaque objet lorsque nous en avons besoin, comme l'ajout d'informations supplémentaires à un objet.

Questions connexes