Вы не объяснили свой сценарий - сколько javascript, как часто он выполняется, как часто он меняется, насколько тесно он должен быть связан с логикой C # и так далее.
Если он редко изменяется, то может быть разумно скомпилировать его в MSIL с помощью одной из альтернатив.Если он изменяется «постоянно», то, возможно, имеет смысл установить JS-компилятор и при необходимости отправить его JS.Это что-то вроде REPL для Javascript, которое вы использовали бы программно.Node.js предлагает сервер, который может выполнять операции REPL;он может прослушивать порт, вы отправляете его JS для оценки и отправляет обратно результат. бесплатный компонент w3sockets , который можно использовать из cscript.exe для выполнения чего-то подобного: например, вы можете создать оболочку Javascript "host", которая прослушивает сокет, выполняет js-файл, который получает, а затем отправляетрезультат.
Если он должен быть тесно интегрирован с кодом C #, то вам нужно быть умнее с этим.Одним из способов сделать это может быть размещение JS в Компоненте скрипта Windows и использование кода C # для вызова логики JS через COM.Вы также можете сделать обратное - заставить JS-хост вызывать слой C # через COM для сбора ввода и доставки результатов.
РЕДАКТИРОВАТЬ
Лучшим способом является использование материала IActiveScript - это официальный способ, которым Microsoft позволяет размещать сценарии в приложении.Здесь опубликован пример winforms здесь .
ИЛИ лучше, см. анализ и выполнение JS с помощью C #
Используя этот код, я собрал демонстрациюкак анализировать и вызывать Javascript из приложения .NET, используя IActiveScript.
Вы можете скачать проект VS2010 для этого приложения здесь .