Не удается импортировать модуль после успешного добавления ссылки в asp.net IronPython - PullRequest
1 голос
/ 20 февраля 2010

Я добавляю ссылку на файл funciones.dll, используя

clr.AddReferenceToFileAndPath (), потому что я не мог заставить его работать другим способом с этим файлом, и он успешно делает это. Файл называется funciones.dll и находится в папке bin. Но когда я делаю

from funciones import * 

Я получаю "модуль с именем funciones"

, так как файл funciones.dll - это файл funciones.py, скомпилированный, разве имя модуля должно называться только funciones, а другого имени нет? Разве имя не является проблемой, а это другое? Я не знаю, какая другая информация может быть уместна здесь, но если есть какая-либо информация, дайте мне знать

Ответы [ 2 ]

1 голос
/ 01 марта 2010

Решено путем компиляции файла .py с помощью clr.CompileModules () вместо pyc.py. Модуль может быть импортирован, когда вы скомпилируете его таким образом (спасибо, Дино)

1 голос
/ 20 февраля 2010

При выполнении from x import * вам нужно поместить пространство имен из библиотеки DLL, где находится х.

Так что если ваш код выглядит как

namespace Foo.Bar{
  //code in here
}

ваш код Ironpython будет выглядеть как

import clr
clr.AddReferenceFromFileAndPath("/path/to/dll.dll")
from Foo.Bar import *
...