C# схема за обаждане към JS, намерена в интернет публичен низ GetTimeByJs() { Тип obj = Type.GetTypeFromProgID("ScriptControl"); ако (obj == null) връща null; обект ScriptControl = Activator.CreateInstance(obj); OBJ. InvokeMember("Език", BindingFlags.SetProperty, null, ScriptControl, нов обект[] { "JavaScript" }); Низ js = "Function Time(A, B, MSG){ var sum = a + b; return new Date().getTime() + ': ' + msg + ' = ' + sum }"; OBJ. InvokeMember("AddCode", BindingFlags.InvokeMethod, null, ScriptControl, new object[] { js }); Върни OBJ. InvokeMember("Eval", BindingFlags.InvokeMethod, null, ScriptControl, new object[] { "time(1, 2, '1 + 2')" }). ToString(); }
Тестът е наред. time(1, 2, '1 + 2'), където параметрите, подадени в , са (номер 1, номер 2, низ 1+2). Но има въпрос, нов обект[] { "time(1, 2, '1 + 2')" }, ако аргументът на JS метода е от тип байт[], как трябва да се запише при извикване?
|