2009-04-24 6 views
2

J'ai eu une petite discussion avec un de mes amis à propos de l'utilisation du framework Entity. J'ai eu un projet où j'ai fait une solution à 3 niveaux avec le framework d'entité comme datalayer, et utilisé des objets de transfert de données pour passer du niveau métier à l'interface utilisateur. J'ai vraiment aimé le couplage lâche qu'il donne, puisque je peux changer le cadre de l'entité avec, par exemple, hiberner plus tard. Mon ami, d'un autre côté, soutenait que le but du cadre Entity était de le modéliser pour qu'il puisse être utilisé sur l'interface utilisateur. Comment coupler le framework d'entité à votre solution?Entité Framework et couplage

+1

Vous devez éditer le titre de votre message. Il dit "Entity facebook" au lieu de "Entity Framework" :-) –

+0

J'étais trop rapide sur ma question. Il devrait y avoir écrit Entity Framework et non Entity Facebook :) – Dofs

Répondre

2

Je vois l'idée que mon ami propose avec les couches interchangeables Hibernate et EF, mais je pense que c'est un peu drastique car ces deux frameworks contiennent déjà des capacités DL-> BL. Je pense que la raison d'utiliser des cadres comme EF et Hibernate sont ceux-ci, en ordre de priorité:

1. Utilisation directe des entités dans la logique métier
2. Type de base de données indépendance
3. Mise en cache automatique
4. SQL Abstraction
S'attendre à ce qu'un cadre comme celui-ci soit aussi faiblement couplé aux niveaux nécessiterait trop d'analyse de requêtes, d'enveloppement d'objet et de déballage et de bruit divers pour compenser l'interchangeabilité qui pourrait ne jamais devenir une réalité. Comme je le vois, sa proposition se traduirait par l'équivalent de:
DL -> DL -> BL -> UL
Quelqu'un d'accord sur ce point?

+0

Je pense que vous m'avez mal compris. Lorsque j'utilise le DTO, je sur le businesslayer utilise l'EF et quand les calculs sont faits, je fais alors ma transformation à EF-object -> objet de transfert de données et le passe à l'interface utilisateur. – Dofs

+0

Après avoir mis le site en place, j'ai découvert que la boxe et le déballage étaient bien trop lents ... – Dofs

Questions connexes