Thoughts on C# 7.0 Local Functions. Potential Features - Local Functions Frankly, when I first tried this, I thought that it's just a nice and compact way of defining local helpers. In fact, it's much more interesting and useful feature. Today I'm going to explore and explain it in more details. Let's start with a brief overview of the current situation. Before Local Functions Private methods The first option that existed in C# 1 is having a private method. That’s a clean and simple solution. It has few issues, though. PrintMe might have no sense outside of ThatTime method, but it’s accessible for every other method inside the class. It will be taken into account by IntelliSense. Func and Action We can try to hide our helper inside the scope of ThatTime method by converting it to Func<int, string>: Any disadvantages ?? Yep, a lot. The call is unnecessary expensive: it will produce more ...
The idea here is that, as with any other form of math that we know of, we cannot divide by zero in a SQL call. Therefore, running this code : SELECT ( 3765 / 0 ) AS value ; if you ever tried this , result of SQL server would be : To prevent this sort of error from being thrown, author Hugo Kornelis suggests using a NULLIF () in the divisor of the equation. NULLIF () takes two arguments and returns NULL if the two values are the same and can be used to turn the divisor from a zero into a NULL which, in turn, will force the entire equation to become NULL . SELECT ( 3765/ NULLIF( 0, 0 ) ) AS value ; Therefore, while we try running modified query (as above) , we would end up getting Null Object , which reduces the risk of handling divide by zero : NULLIF(0,0) returns NULL since zero is equal to zero , which makes SQL statement to return NULL . Till this point its pointless example since both zero values are hard coded . But imagine if...
Comments
Post a Comment