В рамках нашего перехода с .net 1.1 на .net 3.5 нам пришлось заменить несколько библиотек DLL продавца.
Один из них доставляет нам проблемы только в 1 месте из 4 мест, где мы его используем:
Проблемным местом является проект формы Windows, который использует отражение для динамической загрузки некоторых библиотек DLL, которые запускают длительные процессы. Один из этих длительных процессов — это агент, который полагается на одну из наших библиотек DLL продавца.
Мы получаем исключение отсутствующей сборки в тот момент, когда мы впервые вводим функцию, которая ссылается на библиотеку. Я уже проверил такие глупости, как будто мы забыли перенести ссылку из старой версии в новую, но это не так. Я также проверил каталог bin проекта, и сборка там.
Кто-нибудь сталкивался с ситуацией, когда среда выполнения .net 2.0 отказывается загружать такую сборку? И если да, то как мы можем решить эту проблему.
Дополнительная информация:
Конкретным поставщиком в этом случае является dtSearch, и это граница, на которой возникает ошибка:
Private Sub BuildIndex()
SetIndexOptions()
ExecuteIndexJob()
End Sub
Private Sub SetIndexOptions()
'Body removed for brevity
End Sub
Ссылка на библиотеку содержится в SetIndexOptions. BuildIndex() вводится, но исключение возникает при вызове SetIndexOptions. Функция фактически никогда не вводится.