【问题标题】:Use C# class implemented in shared project with Nlua使用 Nlua 在共享项目中实现的 C# 类
【发布时间】:2016-09-21 23:03:18
【问题描述】:

我想在我的项目中使用 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 共享项目中定义的方法和类?我很确定我的程序集有问题,但似乎没有太多关于这个主题的文档。

感谢任何帮助!

【问题讨论】:

    标签: c# lua scripting nlua


    【解决方案1】:

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

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

    谢谢。

    【讨论】:

      猜你喜欢
      • 2019-11-11
      • 2011-01-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-07
      • 1970-01-01
      相关资源
      最近更新 更多