我正在尝试验证动态条件。有办法吗?
string condition = "i == 3";
for (int i = 0; i < 5; i++)
{
if (condition)
{
// condition met
}
}
或者这是错误的方法,还有更好的方法来动态评估条件吗?
答案 0 :(得分:1)
您可以使用这样的委托表达式,但这不会将字符串转换为表达式。但也许这是一种你应该考虑的方法呢?
Func<int, bool> condition = i => i == 3;
for (int i = 0; i < 5; i++)
{
if (condition(i))
{
Console.WriteLine(i);
}
}