C# - 分配布尔表达式的结果

时间:2012-07-16 10:54:33

标签: c#

我不确定这是否是c#支持的功能,但它是我在javascript编程中使用的构造,我希望使用带有c#的构造,如果它支持它(.net Framework 3.5)。 / p>

我有以下工作代码:

if (user.Status == AccountStatus.Active) {
  status = true;
} else {
  status = false;
}

我想将其缩短如下:

status = (user.Status == AccountStatus.Active);

在Javascript中,这将在括号内分配评估的真/假结果。这在c#中似乎对我不起作用,并导致通用编译错误。

是否有另一种方法以紧凑的方式实现这一目标?

2 个答案:

答案 0 :(得分:6)

这应该可以正常工作。

应该:

status = user.Status == AccountStatus.Active;

您的语法是正确的。

答案 1 :(得分:3)

我能够成功执行以下

bool a = (1 == 0); //returns false

bool a = (1 == 1); //returns true