Do we have any operator in C# by which I can avoid short circuit evaluation and traverse to all the conditions.
say
if(txtName.Text.xyz() || txtLastName.Text.xyz())
{
}
public static bool xyz(this TextBox txt)
{
//do some work.
return false;
}
It should evaluate all conditions irrespective of output obtained. And after evaluating last condition continues according to result obtained. ?
In imperative language terms (notably C and C++), where side effects are important, short-circuit operators introduce a sequence point – they completely evaluate the first argument, including any side effects, before (optionally) processing the second argument.
Short-Circuit Evaluation: Short-circuiting is a programming concept in which the compiler skips the execution or evaluation of some sub-expressions in a logical expression. The compiler stops evaluating the further sub-expressions as soon as the value of the expression is determined.
AND(&&) short circuit:If there is an expression with &&(logical AND), and the first operand itself is false, then a short circuit occurs, the further expression is not evaluated, and false is returned.
Just use a single bar, this will evaluated both arguments regardless of the outcome of the first result.
if(txtName.Text.xyz() | txtLastName.Text.xyz()) { }
You can also do the same with AND, i.e. You can replace &&
with a single ampersand to get the same affect as above:
if(txtName.Text.xyz() & txtLastName.Text.xyz()) { } // Both sides will be called
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With