Ik heb een asp.net pagina die via een request.querystring een bedrag ophaalt.
Dit bedrag wil ik omzetten naar centen.
Het probleem is dat het bedrag soms met en soms zonder getallen achter de komma is dus:
100 of 100,5
Centen worden in de querystring gescheiden door een komma. Als ik de string met ToDouble omzet wordt het:
100,5 toDouble -> 10050 (dit moet ik dan x 10 doen)
maar als er geen centen zijn wordt het
100 --> 100 (dit moet dan x 100)
Als 100 100 blijft is het niet goed, dit zijn geen centen, maar als ik altijd het bedrag vermenigvuldig met 100 gaat het fout met getallen die wel centen hebben 100,5 wordt 10050 * 100 = 1005000.
Ik heb ook ToInt32 geprobeerd, kreeg ik hetzelfde probleem als bij todouble.
Waarschijnlijk is het probleem dat ik de datatypes in .net aan het misbruiken ben, maar
wat is nu (vb.net) de juiste methode om in asp.net een string (met komma) om te zetten in een getal?
nb. in classic asp deed ik gewoon:
ging altijd prima.
Dit bedrag wil ik omzetten naar centen.
Het probleem is dat het bedrag soms met en soms zonder getallen achter de komma is dus:
100 of 100,5
Centen worden in de querystring gescheiden door een komma. Als ik de string met ToDouble omzet wordt het:
100,5 toDouble -> 10050 (dit moet ik dan x 10 doen)
maar als er geen centen zijn wordt het
100 --> 100 (dit moet dan x 100)
Als 100 100 blijft is het niet goed, dit zijn geen centen, maar als ik altijd het bedrag vermenigvuldig met 100 gaat het fout met getallen die wel centen hebben 100,5 wordt 10050 * 100 = 1005000.
Ik heb ook ToInt32 geprobeerd, kreeg ik hetzelfde probleem als bij todouble.
Waarschijnlijk is het probleem dat ik de datatypes in .net aan het misbruiken ben, maar
wat is nu (vb.net) de juiste methode om in asp.net een string (met komma) om te zetten in een getal?
nb. in classic asp deed ik gewoon:
code:
1
2
3
| Dim prijs
prijs = request.querystring("prijs")
prijs = (prijs * 100) |
ging altijd prima.