C#使用技巧之调用JS脚本(转)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#使用技巧之调用JS脚本(转)相关的知识,希望对你有一定的参考价值。

1、创建个Winform项目。

2、在From1上增加一个文本框一个按钮。

3、在解决方案中创建一个test.js文件。

test.js代码如下:

function sayHello(str) {
    return "Hello," + str;
}
4、进入Form1.cs编码后台代码。
private void button1_Click(object sender, EventArgs e)
        {
            string path = AppDomain.CurrentDomain.BaseDirectory + "test.js";
            string str2 = File.ReadAllText(path);

            string fun = string.Format(@"sayHello(‘{0}‘)" ,this.textBox1.Text.Trim());
            string result = ExecuteScript(fun, str2);

            MessageBox.Show(result);
        }

        /// <summary>
        /// 执行JS
        /// </summary>
        /// <param name="sExpression">参数体</param>
        /// <param name="sCode">javascript代码的字符串</param>
        /// <returns></returns>
        private string ExecuteScript(string sExpression, string sCode)
        {
            MSScriptControl.ScriptControl scriptControl = new MSScriptControl.ScriptControl();
            scriptControl.UseSafeSubset = true;
            scriptControl.Language = "JScript";
            scriptControl.AddCode(sCode);
            try
            {
                string str = scriptControl.Eval(sExpression).ToString();
                return str;
            }
            catch (Exception ex)
            {
                string str = ex.Message;
            }
            return null;
        }

技术分享

 

参考:http://www.cnblogs.com/xdpxyxy/archive/2013/06/11/3132097.html

以上是关于C#使用技巧之调用JS脚本(转)的主要内容,如果未能解决你的问题,请参考以下文章

Unity3D热更新之LuaFramework篇[05]--Lua脚本调用c#以及如何在Lua中使用Dotween

无法通过 c# 代码调用 jConfirm 脚本

selenium之调用Javascript

c#的webbrowser调用本地javascript脚本?

C# Winform 执行JS脚本

Jmeter组件之-Test Fragment(测试片段)