Implementing JS Eval in C#

前端 未结 3 1468
渐次进展
渐次进展 2021-01-07 12:50

Possible Duplicate:
C# eval equivalent?

Duplicate of How can I evaluate C# code dynamically?

How ca

相关标签:
3条回答
  • 2021-01-07 12:54

    You can actually use the JScript eval function from C#...

    Create a file JsMath.js, with the following JScript code :

    class JsMath
    {
        static function Eval(expression : String) : double
        {
            return eval(expression);
        };
    }
    

    Compile it into a DLL :

    jsc /t:library JsMath.js
    

    Add a reference to JsMath.dll to your project. You can now use the JsMath class in your code :

    double result = JsMath.Eval(expression);
    
    0 讨论(0)
  • 2021-01-07 13:16

    If you can use C# 3.0 / .NET 3.5, there's a sample of a fully operational expression parser in C# Samples for Visual Studio 2008 at MSDN Code Gallery, under DynamicQuery. This makes it possible not just to evaluate single expressions, but even to create functions (delegates) from them, or LINQ expressions. (The LinqDataSource control uses a slightly modified version of this sample internally.)

    0 讨论(0)
  • 2021-01-07 13:16

    Go to http://json.org/ and scroll to the bottom. Look for C# in the left column.

    0 讨论(0)
提交回复
热议问题