Domanda

Qualcuno può dirmi perché:

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

fallisce e invece devi farlo:

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

Perché sembra così stupido!

È stato utile?

Soluzione

Probabilmente dovresti anche usare long.Parse (str)

Un long è un numero intero, quindi non puoi avere decimali amico. (ho provato a dirtelo su Twitter :))

Altri suggerimenti

Il manuale dice:

  

FormatException:

     Il valore

non è costituito da un segno opzionale seguito da una sequenza di cifre (da zero a nove).

e un . non è in a sequence of digits .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top