views:

332

answers:

2

Can someone tell me why:

var nl = Convert.ToInt64("17029268.1650117");

fails, and instead you have to do this:

var nl = Convert.ToInt64(Convert.ToDouble("17029268.1650117"));

Because it seems so stupid!

+6  A: 

The manual says:

FormatException:

value does not consist of an optional sign followed by a sequence of digits (zero through nine).

and a . is not in a sequence of digits.

gimel
+4  A: 

You should probably also use long.Parse(str)

A long is a whole number, so you can't have decimals dude. (tried to tell you on twitter :) )

DarkwingDuck