1 votes

Impossibilité d'importer un module après avoir réussi à ajouter une référence, dans asp.net IronPython

J'ajoute une référence à un fichier funciones.dll en utilisant

clr.AddReferenceToFileAndPath() parce que je n'arrivais pas à le faire fonctionner autrement avec ce fichier et il le fait avec succès. Le fichier s'appelle funciones.dll et il se trouve dans le dossier bin. Mais lorsque je fais

from funciones import * 

J'obtiens "aucun module nommé funciones"

depuis le fichier funciones.dll c'est un fichier funciones.py qui est compilé, le nom du module ne devrait-il pas être uniquement nommé funciones et aucun autre nom ? le nom n'est-il pas le problème et son autre ? Je ne sais pas quelles autres informations pourraient être pertinentes ici, mais s'il y en a, faites-le moi savoir.

1voto

AutomatedTester Points 14713

Lorsque vous faites le from x import * vous devez mettre l'espace de nom de la dll où se trouve x.

Donc si votre code ressemble à

namespace Foo.Bar{
  //code in here
}

votre code ironpython ressemblerait à

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

0voto

Pablo Points 624

Résolu en compilant le fichier .py avec clr.CompileModules() au lieu de pyc.py . Le module peut être importé lorsque vous le compilez de cette façon (Merci Dino).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X