Une approche que nous avons récemment adoptée consiste à inclure un registre StructureMap dans chacun de nos assemblys définissant les dépendances par défaut.StructureMap: comment configurer correctement les dépendances par défaut
Nous utilisons un scanner pour le faire:
cfg.Scan(scanner =>
{
scanner.TheCallingAssembly();
scanner.Assembly("Assembly1");
scanner.Assembly("Assembly2");
scanner.Assembly("Assembly3");
scanner.LookForRegistries();
});
L'idée est que nous pouvons alors override les dépendances par défaut de l'application principale.
La question est, où devrions-nous enregistrer ces remplacements? c'est-à-dire avant de numériser ?, après avoir numérisé?
En outre, l'ordre des assemblys spécifié dans l'expression de l'analyse affecte-t-il l'ordre dans lequel les dépendances sont enregistrées. Donc, dans l'exemple ci-dessus, les registres contenus dans l'application principale (TheCallingAssembly) seraient-ils remplacés par ceux de "Assembly3"?
Un grand merci
Ben