SyntaxHighlighter

Thursday 13 January 2011

Rant: VB.NET and IIf

Yes - another rant about VB. I really do dislike it the more I use it and I've been using it for too long! This time it's IIf that's getting on my wick!

Why can't VB have the "normal" inline If like real programming languages
x = (a == b ? 1 : 2) and not this stupid IIf function?

The problem I have (and I'm sure everybody else who VBs has), is that IIf is a function and therefore evaluates it's parameters first. Which then means this:

x = IIf(String.IsNullOrEmpty(textbox.Text), Nothing, Double.Parse(textbox.Text))

fails and has to be changed to this:

x = Nothing
If Not String.IsNullOrEmpty(textbox.Text) Then
    x = Double.Parse(textbox.Text)
End If

OK, I know I can change it round a bit to make fit one line a bit more, but that's not the point. Come on MS, give us a real inline if...

Grrr!!

No comments:

Post a Comment

Labels

.net (7) ajax (1) android (7) apache (1) asp.net (3) asus (2) blogger (2) blogspot (3) c# (16) compact framework (2) cron (1) css (1) data (1) data recovery (2) dns (1) eclipse (1) encryption (1) excel (1) font (1) ftp (1) gmail (5) google (4) gopro (1) html (1) iis (3) internet explorer IE (1) iphone (1) javascript (3) kinect (1) linux (1) macro (1) mail (9) mercurial (1) microsoft (3) microsoft office (3) monitoring (1) mootools (1) ms access (1) mssql (13) mysql (2) open source (1) openvpn (1) pear (2) permissions (1) php (12) plesk (4) proxy (1) qr codes (1) rant (4) reflection (3) regex (1) replication (1) reporting services (5) security (2) signalr (1) sql (11) sqlce (1) sqlexpress (1) ssis (1) ssl (1) stuff (1) svn (2) syntax (1) tablet (2) telnet (3) tools (1) twitter (1) unix (3) vb script (3) vb.net (9) vba (1) visual studio (2) vpc (2) vpn (1) windows (4) woff (1) xbox 360 (1)