ClearScript:如何输出一个对象?
问题描述:
下面是C#代码:ClearScript:如何输出一个对象?
string jsScript = "var x = {A: 10, B: 100}";
scriptEngine.Evaluate(jsScript);
var result = scriptEngine.Evaluate("x");
结果是WindowsScriptItem对象的实例,我怎么能得到的值10和100?
答
如果您知道对象的属性名称,你可以这样做:显然
dynamic dynamicResult = result;
foreach (var name in dynamicResult.GetDynamicMemberNames())
Console.WriteLine("{0}: {1}", name, dynamicResult[name]);
你会:
dynamic dynamicResult = result;
Console.WriteLine(dynamicResult.A);
Console.WriteLine(dynamicResult.B);
如果你不知道属性名称,你可以这样做如果对象的属性值本身可以是对象,则需要更复杂的东西。