如何评估三元字符串表达式并识别值
How to evaluate Ternary string expression and identify value
值 = 14000;
三元字符串表达式为“value > 20000 ? 200 : value > 15000 && value < 19999 ? 150 : 100 “
答案应该是 100
有什么方法可以评估表达式吗?
您可以使用 Scripting APIs 来计算表达式。
脚本 API 使 .NET 应用程序能够实例化 C# 引擎并针对主机提供的对象执行代码片段,并且需要 Microsoft.CodeAnalysis.CSharp.Scripting
包。
例如,
var globals = new Global();
var str = "value > 20000 ? 200 : value > 15000 && value < 19999 ? 150 : 100 ";
var result = await CSharpScript.EvaluateAsync(str,globals:globals);
Console.WriteLine(result);
其中全局定义为
public class Global
{
public int @value = 14000;
}
值 = 14000;
三元字符串表达式为“value > 20000 ? 200 : value > 15000 && value < 19999 ? 150 : 100 “
答案应该是 100
有什么方法可以评估表达式吗?
您可以使用 Scripting APIs 来计算表达式。
脚本 API 使 .NET 应用程序能够实例化 C# 引擎并针对主机提供的对象执行代码片段,并且需要 Microsoft.CodeAnalysis.CSharp.Scripting
包。
例如,
var globals = new Global();
var str = "value > 20000 ? 200 : value > 15000 && value < 19999 ? 150 : 100 ";
var result = await CSharpScript.EvaluateAsync(str,globals:globals);
Console.WriteLine(result);
其中全局定义为
public class Global
{
public int @value = 14000;
}