我们在C#中是否有任何操作员可以避免短路评估并遍历所有条件。
说
if(txtName.Text.xyz() || txtLastName.Text.xyz())
{
}
public static bool xyz(this TextBox txt)
{
//do some work.
return false;
}
无论获得的输出如何,都应评估所有条件。并且在根据获得的结果评估最后条件之后继续。 ?
答案 0 :(得分:19)
只需使用一个条形图,无论第一个结果的结果如何,都会评估这两个参数。
if(txtName.Text.xyz() | txtLastName.Text.xyz()) { }
您也可以使用AND执行相同操作,即您可以使用单个&符替换&&
以获得与上述相同的效果:
if(txtName.Text.xyz() & txtLastName.Text.xyz()) { } // Both sides will be called
答案 1 :(得分:5)
只需使用一个条;
if(txtName.Text.xyz() | txtLName.Text.xyz())
{
}