Pregunta

¿Alguien puede decirme por qué:

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

falla y, en su lugar, debe hacer esto:

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

¡Porque parece tan estúpido!

¿Fue útil?

Solución

Probablemente también deberías usar long.Parse (str)

Un largo es un número entero, por lo que no puedes tener decimales, amigo. (intenté decírtelo en twitter :))

Otros consejos

El manual dice:

  

FormatException:

     El valor

no consiste en un signo opcional seguido de una secuencia de dígitos (cero a nueve).

y un . no está en a sequence of digits .

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top