У меня есть код С#, который использует Microsoft Scripting Control для оценки некоторых выражений:
using MSScriptControl; // references msscript.ocx
ScriptControlClass sc = new ScriptControlClass();
sc.Language = "VBScript";
sc.AllowUI = true;
try
{
Console.WriteLine(sc.Eval(txtEx.Text).ToString());
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
(txtEx — простое текстовое поле)
Числовые выражения: "6+4", "cos(34)", "abs(-99)", "round(1.234, 2)" и т.д.
Булевы выражения: "истина или ложь", "1=2" в порядке.
Но как я могу оценить простое «если»? Я пробовал "если (истина, 2, 3)", "iif (истина, 2, 3)", "если (истина), то 2 еще 3" и "если (истина), то 2 еще 3 endif"
Может ли кто-нибудь помочь мне оценить простые условные выражения? Любая помощь высоко ценится!
RH