0

我想在我的项目中使用 Nlua。我的项目设置是:我有一个共享项目,我在其中实现了我的逻辑,以及几个使用这个共享项目的平台特定项目。

我现在想在使用 Nlua 执行的 lua 函数中使用此共享项目中定义的类。问题是,这不起作用。

lua.DoString(@"import('Platformspecific_Project_AssemblyName', 'Platformspecific_Project_Namespace') SomceClass.StaticMethod()");

这工作正常。但是如果我现在想使用共享项目中定义的类,这将不起作用:

lua.DoString(@"import('Platformspecific_Project_Assembly','Shared_Project_Namespace') SomeSharedClass.StaticMethod()");

我得到的错误是:

 Additional information: [string "chunk"]:1: attempt to index global 'SomeSharedClass' (a nil value)

从我读到的内容(顺便说一下,我是 lua 的新手)如果我想在定义变量之前对变量做一些事情,就会发生这个错误(因为 lua 文件是从头到尾解析的,尽管我并不担心这。)

我的问题是:如何使用 Nlua 共享项目中定义的方法和类?我很确定我的程序集有问题,但似乎没有太多关于这个主题的文档。

任何帮助表示赞赏!

4

1 回答 1

0

共享项目不会创建Assembly (.dll),您需要使用最终的Assembly。

或者您也可以使用 PCL。否则LoadAssembly来自 NLua 将失败

谢谢你。

于 2016-06-07T03:56:59.763 回答