从JINT(服务器端)运行c#代码

本文关键字:运行 代码 服务器端 JINT | 更新日期: 2023-09-27 18:09:59

这可能不是JINT的正确用法,如果有人知道其他系统可以做到这一点,我愿意接受他们,只要他们可以序列化为字符串-但本质上我需要找到一种方法来使用JINT来解析和运行c#代码。作为一个整体,我对JINT的概念非常陌生,所以我不确定到底要寻找什么。但是我希望能够设置一些东西,比如…

public int GetValue(string name){
    // database work to find the value requested
    // return the value found
}
string s = "GetValue('something') * 2";

并且能够解析字符串并运行它,GetValue执行并传入给定的参数。在JINT或其他类似的框架中是否可能实现类似的功能?

从JINT(服务器端)运行c#代码

你可以很容易地从jintengine SetFunction(string name, Delegate function)

文档
JintEngine engine=new JintEngine();
Func<string,int> function = GetValue;
engine.SetFunction("GetValue", function);
var run = engine.Run("GetValue('something') * 2");