Я пытался импортировать две C# .dll с помощью IronPython. Один называется m1.sdk.dll, другой называется m1.sdk.something.dll. Но я получил ошибку. В сообщении об ошибке говорится, что он не может найти тип в файле m1.sdk.something.dll.Импортировать файлы с точками имени C# dll в проблемах IronPython
Но они загружаются через clr.AddReferenceToFileAndPath() и импортируются IronPython. Я вижу, что они переносятся через clr.References
Есть ли способ загрузить эти .dll, так что, несмотря на то, что IronPython с именем dotted, посмотрите, как тот же модуль?
import clr
clr.AddReferenceToFileAndPath("c:\\path_to_file_\\m1.sdk.dll")
clr.AddReferenceToFileAndPath("c:\\path_to_file_\\m1.sdk.something.dll")
import m1.sdk
import m1.sdk.something # The error occurs here
* Traceback (самый последний вызов последнего):
Файл "", линия 1, в
ImportError: Нет модуль с именем что-то *
Пожалуйста, добавьте ваш код, а также точные исключения/стеки. –
Я думаю, что python понимает, что они являются одним и тем же модулем, но не являются, он должен подключать модуль в другое время исполнения? –
Вы подтвердили, что и 'm1.sdk.dll', и' m1.sdk.something.dll' фактически содержат объекты в пространствах имен 'm1.sdk' и' m1.sdk.something'? Вы импортируете пространства имен, а не сборки. Нет требования, чтобы сборка должна была определять пространства имен, которые соответствуют имени файла сборки. –