Как передать таблицу Lua с C#Как передать таблицу Lua с C#
Я использую LuaInterface, это мой C# код
using System;
using System.IO;
using System.Text;
using LuaInterface;
namespace GetLuaTable
{
class Program
{
static void Main(string[] args)
{
Lua netLua = new Lua();
CShaprFunction cShapr = new CShaprFunction();
netLua.RegisterFunction("CShaprConsoleLine", cShapr, cShapr.GetType().GetMethod("CShaprConsoleLine"));
netLua.RegisterFunction("CSharpGetTableFromStr", cShapr, cShapr.GetType().GetMethod("CSharpGetTableFromStr"));
netLua.DoFile("MyLua.lua");
netLua.GetFunction("main").Call();
Console.ReadKey();
}
}
class CShaprFunction
{
public void CShaprConsoleLine(object obj)
{
Console.WriteLine(obj);
}
public LuaTable CSharpGetTableFromStr(string name)
{
Lua lua = new Lua();
lua.DoString("a={\"test\"}");
LuaTable tab = lua.GetTable(name);
return tab;
}
}
}
это Lua код:
function main()
CShaprConsoleLine("Start")
local tmptable = CSharpGetTableFromStr("a")
CShaprConsoleLine(type(tmptable))
CShaprConsoleLine("end")
end
Но я получаю результат, тип tmptable - тип функции, а не тип таблицы. например:
Start
function
end
так как я могу передать таблицу lua?
Большое спасибо, что правильно – Xinbs
Можете ли вы помочь мне с этим вопросом: https://stackoverflow.com/questions/48400700/how-to-use-json-methods-inside-lua-script и-выполнить-Lua-скрипт-с-с – User