Modèle de données:Résolution des dépendances sur le modèle de données sans suppression en cascade
tTemplate (templateId int PK)
tpage (PageId int PK, templateId int FK)
tEmailMessage (EmailMessageId int PK, templateId int FK)
Exigences:
La suppression d'un modèle ne doit être autorisée que s'il n'y a pas de dépendances.
Le TemplateService est responsable de la suppression de modèles:.
nouvelle TemplateService() Supprimer (MyTemplate);
Les modules Page et E-mail dépendent du module Template qui, à son tour, n'est heureusement pas conscient de ces dépendances. Dans certaines configurations, le module Page ou Email ne sera pas présent. Comment pourrais-je résoudre la dépendance sur le modèle de données sous-jacent? Comment est-ce que j'obtiens le TemplateService pour commencer une enquête pour savoir si c'est OK pour supprimer l'article?
J'ai fait quelques recherches sur EventBrokers et les files d'attente de messages, mais je ne vois pas comment ils peuvent seuls m'aider. Je ne vois pas non plus comment l'utilisation du modèle d'événement .net suffirait à résoudre ce problème.
Je ne suis pas vraiment à la recherche d'un moyen de préserver l'intégrité des données, mais plutôt de permettre une communication inter-service sans causer de dépendances de service indésirables. Je pourrais avoir une implémentation de PageService où la suppression du template serait correcte, et où la dépendance serait résolue en mettant le tPage.TemplateId à null. Dans d'autres implémentations, je pourrais vouloir créer une suppression en cascade.
Je ne suis pas vraiment à la recherche d'un moyen de préserver l'intégrité des données, mais plutôt de permettre une communication inter-service sans causer de dépendances de service indésirables. J'ai modifié mon affichage original. – Marcus