Связывание.Net 4.0, резолюция Ассамблеи и VSTO 4.0

У меня проблема с разрешением сборки со связанными сборками при написании надстройки VSTO 4.0.

У меня есть сборки A, B, C и D; где сборка A ссылается на ссылки B и B C и D. В процессе сборки я связываю сборки C и D со сборкой B. Затем в сборке A мы используем два процесса перенаправления привязки сборки, оба выполняются в статическом конструкторе сборки A.

  1. Из сборки А зацепить AppDomain.CurrentDomain.AssemblyResolve += MyResolver перенаправить связывание C и D обратно в B (это имело место в 80% случаев использования.)
  2. Затем для решения других 20% (или я так думал) от сборки A I вызова Assembly.LoadFrom( <assembly B> )

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

Не удалось загрузить файл или сборку 'C, Version=#, Culture= нейтральный, PublicKeyToken=#' или одну из ее зависимостей. Система не может найти указанный файл.

Когда я смотрю на модули, загруженные в AppDoamin, я вижу сборки A и B так же, как и с приложением, которое работает должным образом; Тем не менее Appdomain.CurrentDomain.AssemblyResolve событие никогда не срабатывает, или, по крайней мере, мое private static Assembly MyResolver( Object sender, ResolveEventArgs args ) никогда не вводится

В моем поиске ответ, который я нашел, который, казалось, наиболее соответствовал моей проблеме, был здесь...

http://widequestion.com/question/vsto-assemblyresolve-issue/

Все это, как говорится, его ответ "нет другого пути" кажется... ну, неправильно, но я не могу это опровергнуть. Кто-нибудь знает, как я мог бы контролировать перенаправление сборки в этом контексте?

0 ответов

Другие вопросы по тегам