2010-02-16 1 views
1

При выполнении динамической компиляции в C# исходный код, если случится, чтобы попытаться выполнить скомпилированный целевой DLL (например tmp901.tmp.dll), который имеет отсутствующую ссылку, например:Clear .Net Reflection

InnerException: Не удалось загрузить файл или сборку '_O2_Scanner_MsCatNet, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = null' или одну из его зависимостей.

Кажется, что проблема в том, что на протяжении всего процесса эта сборка никогда не будет разрешена, даже если файл скопирован в место, где выполняется целевая сборка (tmp901.tmp.dll) из. Кажется, что проблема кэширования происходит, что предотвращает повторную проверку существования dll.

Текущее решение - перезагрузить хост-приложение .NET, которое не очень практично.

ответ

0

После сбоя загрузки сбоку, я считаю, что вы все равно можете загрузить сборку вручную, используя Assembly.Load или Assembly.LoadFile. Это должно позволить вам заставлять сборку загружаться, даже если она была неудачной один раз.

 Смежные вопросы

  • Нет связанных вопросов^_^