首页 > 解决方案 > 在第一个 false 之后返回结果的验证方法

问题描述

第一次错误验证后返回结果的最佳方法是什么。我想在每次验证后不检查结果的情况下实现相同的功能。

bool ValidateMany()
{
  bool result=true;

  if(ValidateFirstProperty){
  result = ValidateFirst();
  if(result == false)
    return result;
  }

  if(ValidateSecondProperty){
  result=ValidateSecond();
  if(result == false)
    return result;
  }

  //always validate third one
  result=ValidateThird();
  if(result == false)
    return result;

return result;
}

标签: c#

解决方案


您可以将它们全部放在同一个 if 块中,如果前一个与条件不匹配,它只会移动到下一个 &&。

bool ValidateMany()
{
  if(ValidateFirst() && ValidateSecond() && ValidateThird())
  {
      return true;
  }

  return false;
}

或者将它们组合成一行。

bool ValidateMany()
{
   return ValidateFirst() && ValidateSecond() && ValidateThird();
}

推荐阅读