Как я могу определить, загружал ли StructureMap один и тот же реестр несколько раз?

#c# #structuremap

#c# #structuremap

Вопрос:

Мы диагностируем проблему, которая, по-видимому, связана со StructureMap и реестром. Наше большое приложение загружает реестр, но испытывает некоторые интересные побочные эффекты.

Не вдаваясь во все подробности, мы видим проблемы, которые мы можем воспроизвести, добавив один и тот же реестр в StructureMap дважды. Мы предполагаем, что наше приложение делает то же самое, возможно, добавляя один экземпляр как часть сканирования, а второй как явную регистрацию.

Как я могу определить, загрузил ли StructureMap несколько / повторяющихся экземпляров этого реестра?

Ответ №1:

Я бы запустил:

 container.WhatDoIHave();
  

и проверьте его вывод. Если вы видите несколько регистраций для object, то вы знаете, что у вас проблема.

В качестве альтернативы добавьте код ведения журнала в реестр, чтобы проверить, вызывается ли он несколько раз.

Комментарии:

1. действительно, похоже, что WhatDoIHave() это единственный способ определить это; спасибо!