Как устранить неполадки дважды загруженного объекта в mef - PullRequest
1 голос
/ 10 марта 2011

У меня есть проблема, когда мой объект загружается дважды в MEF. Таким образом, MEF возвращает два моих объекта, что приводит к сбою всей моей программы, потому что я ожидаю только один.

Как я могу проследить / пройти через мою программу, чтобы выяснить, где объекты дважды регистрируются?

У меня есть тег Export в классе. Я предполагаю, что это объясняет один из случаев.

Я использую призму, и объект, который появляется дважды, является представлением оболочки.

TDL не может понять, как отлаживать mef

Ответы [ 2 ]

1 голос
/ 10 марта 2011

Когда вы создаете объект, MEF вызовет CompositionException , когда попытается создать [Import], соответствующий типу. Сведения об исключении CompositionException очень подробны и предоставят вам потенциальные совпадения.

Посмотрите полный текст CompositionException - он должен предоставить вам все "совпадения", которые происходят для данного импорта, что позволит вам отладить проблему.

0 голосов
/ 15 марта 2011

Рискну сказать, что вы как-то дважды загрузили сборку в AggregateCatalog.

...