Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# C语言中的表达式树#_C#_Linq - Fatal编程技术网

C# C语言中的表达式树#

C# C语言中的表达式树#,c#,linq,C#,Linq,如何将其转换为表达式树或使用linq编写基于这些表达式层次结构的函数 我看过这个图书馆,但我不确定我是否走上了正确的道路 在运行时编译和执行代码总是有点困难。 你提到的图书馆只是一种方式 你可以使用Roslyn,它与C#6.0和Visual Studio 2015一起由微软和C#团队提供。你无法想象它有多强大。以下是一些示例和演练: 还有一些介绍: 下面是一些创建REPL的示例(类似于您想要的): 使用Roslyn可以实现如下简单功能: var csScript = string.

如何将其转换为表达式树或使用linq编写基于这些表达式层次结构的函数

我看过这个图书馆,但我不确定我是否走上了正确的道路


在运行时编译和执行代码总是有点困难。 你提到的图书馆只是一种方式

你可以使用Roslyn,它与C#6.0和Visual Studio 2015一起由微软和C#团队提供。你无法想象它有多强大。以下是一些示例和演练:

还有一些介绍:

下面是一些创建REPL的示例(类似于您想要的):

使用Roslyn可以实现如下简单功能:

var csScript =
    string.Format(@"
        var x = Math.Max(Math.Avg({0},3),Math.Avg(low1:3));
        x;
    ", high1, low1);
    //And this from the REPL
    Console.WriteLine(CSharpScriptEngine.Execute(csScript));

这似乎不是C#
var csScript =
    string.Format(@"
        var x = Math.Max(Math.Avg({0},3),Math.Avg(low1:3));
        x;
    ", high1, low1);
    //And this from the REPL
    Console.WriteLine(CSharpScriptEngine.Execute(csScript));