с помощью динамического активировать функцию JS с помощью c #? - PullRequest
1 голос
/ 25 декабря 2011

У меня есть Js функции:

function Add (a, b)
{  return a+b;}

function Substract (a, b)
{  return a-b;}

Я знаю (слышал), что могу активировать эти функции в коде c # с помощью ключевого слова dynamic.

Могу ли я получить помощь (или начало помощи) для решения по простому образцу?

1010 * редактировать * Если у меня есть веб-браузер (winform) - который может мне помочь. (извините, что добавил это сейчас).

1 Ответ

2 голосов
/ 25 декабря 2011

Вам нужен интерпретатор javascript, если вы хотите выполнить код javascript.Динамическое ключевое слово C # довольно бесполезно в этом аспекте.Вы можете взглянуть на Javascript .NET или Jint , если вы пытаетесь выполнить эти функции в коде .NET.

Вот пример с Jint:

using System;
using Jint;

class Program
{
    static void Main()
    {
        var script = @"
function Add(a, b) {  
    return a + b;
}

function Substract(a, b) {  
    return a - b;
}

return Add(a, b);
";
        var result = new JintEngine()
            .SetParameter("a", 3)
            .SetParameter("b", 5)
            .Run(script);

        Console.WriteLine("result: {0}", result);
    }
}

Примечание: то, что у вас есть, не является допустимым JavaScript.Ключевое слово var нельзя использовать перед параметрами функции.Поэтому вам, вероятно, следует начать с исправления кода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...