J'ai utilisé les modèles Fowler pour les modèles de domaine avec un Data Mapper et j'ai rencontré des confusions sur la façon d'implémenter la partie création de CRUD. Je ne peux pas utiliser les technologies ORM existantes car les sources de données sous-jacentes sont des systèmes personnalisés. La zone qui me dérange est de savoir comment appeler le sous-officier ORM lorsque j'ai besoin de créer un nouvel objet. Ma couche de domaine n'a aucune visibilité sur mon ORM, à l'exception de mes trouveurs.Création d'objet Fowler Data Mapper
Je ne suis pas sûr si je suis sur la bonne voie, mais les suivantes sont les seules options que je peux voir:
gérer les fonctions créer de la même manière les trouveurs Fowler sont faits. Créez une interface dans la couche Modèle de domaine pour les méthodes de création sur les classes ORM. Demandez ensuite au modèle de domaine d'appeler un conteneur DI et d'instancier une instance de la classe ORM en fonction de l'interface. Pendant l'hydratation de l'objet A dans l'ORM, attacher un délégué pointant vers la méthode de création sur l'ORM pour l'objet B. L'objet domaine A étant hydraté, vous pouvez appeler le délégué sur l'objet A qui appelle la méthode create sur l'objet Le mappeur de B
???
Je dois manquer quelque chose, car cela ne peut pas être si complexe. Toute aide serait grandement appréciée.
Merci