Salut,

Ca fait quelques mois que j'utilise des classes d'extension et j'avoue avoir du mal à décider du meilleur emplacement où les rangers dans mon modèle de classes.

J'ai deux types de classes d'extension :
Des classes outils qui enrichissent les donctionnalités des types du Framework, pas de problème pour celles-ci, elles sont soit dans la couche common soit dans mon Framework.

Des classes plus spécialisés qui enrichissent les fonctionnalités des objets de ma couche domain.

Les casses de ma couche domaine ne peuvent être que passives, c'est à dire qu'elle n'ont pas de méthode (à part les méthodes de navigation lorsque il s'agit d'une classe du domaine générée par un Poco T4 à partir de l'Entity Framework).

Donc, j'hésite à ranger mes classes d'extensions dans un sous-dossier de la couche domain (dans ce cas, les methodes seraient toujours interdites à l'exeption des méthodes d'extension) ou dans la couche business puisqu'il s'agit de méthodes métier.

Etant donné que je sépare mes couches dans des dll différentes, si je mets les classes d'extension dans la couche business, ça m'obligerait à référencer la couche business dans la couche domain (transverse) risquant ainsi de créer une référence circulaire.

J'aurais bien aimé avoir votre avis sur ce point,

D'avance merci

Laurent