JINT преобразовать словарь <String, Object> в строку JSON - PullRequest
0 голосов
/ 24 мая 2019

Я использую PowerUI и Unity (+ Jint, встроенный в powerUI), чтобы попытаться прочитать данные JSON, поступающие со стороны кода JavaScript, на стороне C #.Например, у меня есть некоторый код JavaScript (входящий в Unity в виде простой строки):

var a = importNamespace("Achdus");
a.Heeoolee.Domem({asd:function() {}});

и вызываемая функция C # (когда этот код JavaScript выполняется через PowerUI, Jint и т. Д. ....) это (я уже пытался получить тип JSON, который входит в функцию, то есть словарь):

namespace Achdus
{

    public static class Heeoolee
    {
        public static void Domem(object obj) {
            if(obj is Dictionary<String, System.Object>) {
                var json = obj as Dictionary<String, System.Object>;
                //now how do I do something like "Jint.Native.Json.Stringify(json)" to get the JSON string?
            }
    }
}

переменная "json" фактически является допустимым словарем, который содержит значения JSON, которыеуказанный в строке, я думаю, что автоматически позаботился с Jint.Проблема: теперь я хочу преобразовать этот словарь обратно в простую строку JSON.Я искал функцию Jint stringify по умолчанию, которая делает это, но я не смог найти ту, которая принимает словарь в качестве опции.

Я не могу просто получить строку, преобразовав аргумент "object" в строкупотому что параметр передается из JavaScript через Jint в качестве словаря.

Вероятно, есть встроенная функция Jint, которая могла бы сделать это, что было бы предпочтительнее, все, что я хочу, - это простая реверсия преобразования (#rhyme).

Я искал похожие вопросы, касающиеся преобразования общего объекта C # в строку JSON, но я не уверен, возможно ли то же самое со словарем в этом формате.

...