JScript.NET Evaluate: как и где хранить переменные скриптов - C#
Формулировка задачи:
Доброго времени суток! Как исполнить код на JScript в C#, я уже нашёл на форуме. Ну, точнее, я нашёл такой способ:
Проблема в том, что при повторном вызове этой функции уже "забудутся" все переменные и функции, описанные в прошлый раз.
У меня есть большая библиотека, написанная на JScript со множеством функций. А программа должна уметь по нажатии на кнопку выполнять небольшой код на том же JScript, который использует одну или несколько функций из этой библиотеки, но всю её исполнять много раз не нужно.
К примеру, в библиотеке есть функция:А я, нажав на кнопочку, хочу исполнить При этом, если я каждый раз буду заставлять программу исполнять всю библиотеку с тысячей таких вот маленьких функий, когда нужна только одна или две, то это будет занимать неоправданно много времени.
Для тех, кто дочитал до конца. Что я хочу:
"Исполнить" скрипт с библиотекой один раз при запуске программы, поместить все функции и переменные в память.
Чтобы потом свободно вызывать ту же функцию
using Microsoft.JScript; using Microsoft.JScript.Vsa; // ... Eval.JScriptEvaluate(str, VsaEngine.CreateEngine());
function add(one, two) { return one+two; }
add(5, 7);
add(5, 7);
, не "эвуалируя" всю библиотеку с нуля. Буду рад почитать предложения по этому поводу и благодарен за любую помощь.Решение задачи: «JScript.NET Evaluate: как и где хранить переменные скриптов»
textual
Листинг программы
private static VsaEngine engine = saEngine.CreateEngine(); ... Eval.JScriptEvaluate(str, engine);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д