我正在使用PowerUI和Unity(powerUI内置的+ Jint)来尝试读取C#端从JavaScript代码端传入的JSON数据。例如,我有一些JavaScript代码(作为简单字符串进入Unity):
var a = importNamespace("Achdus");
a.Heeoolee.Domem({asd:function() {}});
和正在调用的C#函数(当此JavaScript代码通过PowerUI和Jint等执行时...)是这样的(我已经尝试获取该函数中的JSON类型,即Dictionary):< / p>
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会自动处理它。问题:我现在想将Dictionary转换回简单的JSON字符串。我一直在寻找可以执行此操作的默认Jint字符串化函数,但找不到使用Dictionary作为选项的函数。
我不能简单地通过将“ object”参数转换为字符串来获取字符串,因为该参数是通过JavaScript通过Jint作为Dictionary传入的。
可能有一个内置的Jint函数可以做到这一点,这将是更好的选择,我想要的只是对转换(#rhyme)的简单还原。
我寻找了有关将通用C#对象转换为JSON字符串的类似问题,但我不确定使用这种格式的Dictionary是否可以实现同样的目的。