2016-05-24 68 views
0

我想在我的項目中使用Nlua。我的項目設置是: 我有一個共享的項目,我實現了我的邏輯,以及使用此共享項目的多個平臺特定項目。使用與Nlua共享項目實現的C#類

我現在想使用這個共享項目中定義的類,這個函數在我用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文件是從開始到結束進行解析的,儘管我對此不太確定),會發生此錯誤。)

我的問題是:我如何使用與Nlua共享項目中定義的方法和類?我非常舒服,我在Assemblies中遇到了一些問題,但似乎沒有太多有關此主題的文檔。

任何幫助表示讚賞!

回答

0

共享項目不會創建Assembly(.dll),您需要使用最終的Assembly。

或者你也可以使用PCL。否則NLua的LoadAssembly將失敗

謝謝。