C#とLuaInterfaceを使用して、ネストされたテーブルを読み取ろうとしていますが、テーブルを含むキーを開こうとすると、nullのLuaTableが取得されます。
.luaファイル:
DB = {
["inventory"] = {
[10001] = {
["row"] = 140,
["count"] = 20,
},
[10021] = {
["row"] = 83,
["count"] = 3,
},
[10075] = {
["row"] = 927,
["count"] = 15,
},
}
}
次のコマンドでテーブルを開くことで、インベントリの下のエントリを正常にforeachできます。
LuaTable tbl = lua.GetTable("DB.inventory");
foreach (DictionaryEntry de in tbl)
...
私ができないことは、在庫アイテムを開いて、同じ方法でそのエントリを列挙することです。キーがSystem.Double
タイプだからですか?これは失敗します:
LuaTable tbl = lua.GetTable("DB.inventory.10001");
foreach (DictionaryEntry de in tbl)
tblがnullであるため、例外があります。
事実上、キー(在庫アイテム)を列挙したら、ネストされたテーブルにドリルダウンして、それらのコンテンツを操作したいと思います。ご覧のとおり、ネストされたテーブルへの参照を私が行っている方法で取得することはできません。