我将这样的文件编译成dll文件并放在bin文件夹中
Imports System
Imports System.Web
Namespace Conexiones
Public Class sql_conexiones
Shared Sub consulta..
...
通过
from Conexiones import *
从.aspx.py文件中可以正常工作。
我在APP文件中的另一个文件中有一个py文件(没有声明名称空间)
import clr
clr.AddReference('System')
import System
clr.AddReference('System.Data')
from System.Data import *
clr.AddReference('System.Web')
import System.Web
def consulta ...
通过
from funciones import *
从.aspx.py文件中可以正常工作。
现在我想在dll文件中使用funciones中的代码。我在bin文件夹中有funciones.dll,我有
from funciones import *
<。>在.aspx.py。
我得到“没有名为funciones的模块”可能我必须明确添加dll吗?我做了
clr.AddReference("funciones.dll")
from funciones import *
我得到“无法添加对程序集funciones.dll的引用”
我的问题是,如何在一个代码类似于#2的文件中使用函数,放在ASP.NET IronPython的bin文件夹中的dll文件中?我在#1和#2之间看到的唯一区别是#1具有声明的命名空间
答案 0 :(得分:0)
我认为你有两个选择:
尝试使用AddReferenceToFile(str)
或AddReferenceToFileAndPath(str)
。有关说明,请参阅此mail。
将bin\
插入sys.path
,然后尝试添加引用。
<强>加了:强>
编译IronPython代码的想法如下:
您有一个文件func.py
:
def one():
return 1
您使用pyc.py
编译它:
C:\IronPython-2.6\ipy.exe C:\IronPython-2.6\Tools\Scripts\pyc.py /out:funciones /target:library func.py
您在另一个脚本中使用它:
import clr
clr.AddReference('funciones')
import func
print func.one()
我希望您看到func
和funciones
之间的区别; - )