可能重复:
C# eval equivalent?
我们如何在C#中实现JS eval() 如果可能提供一个例子.. 谢谢
答案 0 :(得分:4)
您实际上可以使用C#...
中的JScripteval
函数
使用以下JScript代码创建文件JsMath.js:
class JsMath
{
static function Eval(expression : String) : double
{
return eval(expression);
};
}
将其编译为DLL:
jsc /t:library JsMath.js
在项目中添加对JsMath.dll的引用。您现在可以在代码中使用JsMath类:
double result = JsMath.Eval(expression);
答案 1 :(得分:0)
如果您可以使用C#3.0 / .NET 3.5,则可以在MSDN代码库的C# Samples for Visual Studio 2008中的 DynamicQuery 下找到完全可操作的表达式解析器示例。这使得不仅可以评估单个表达式,甚至可以从它们或LINQ表达式创建函数(委托)。 (LinqDataSource
控件在内部使用此示例的略微修改版本。)
答案 2 :(得分:-1)
转到http://json.org/并滚动到底部。在左栏中查找C#。