In einem MVC-Projekt, ich habe einen variable Satz in der web.config von meinem Projekt wie diese:Decimal.Parse seltsames Verhalten auf Chrome und Firefox
Dann in meinem Code, erhalte ich, dass Variable und analysieren sie als Dezimalzahl:
wie Sie sehen können, ist diese Arbeit s in Ordnung, das Problem ist, dass, wenn ich meinen Code auf Google Chrome oder Mozilla Firefox laufen, ich habe diferent Ergebnisse:
ich undestand nicht, warum das passiert, als nicht in allen passieren Maschinen, die das Web auf Chrome laufen, alles was ich denken kann ist, dass es etwas auf der Browser-Konfiguration zu sein scheint, aber es ist eine Standard-Installation, nichts anderes.
Kann mir jemand in die richtige Richtung zeigen? Oder hat eine Idee von was kann dieses Verhalten verursachen?
UPDATE:
-Code in Text (Ich weiß nicht, warum, aber ok)
Für easy-Debugging Ich habe dies:
public static decimal ServiceFee
{
get
{
var webConfigVar = ConfigurationManager.AppSettings["ServiceFee"];
decimal webConfigVarDecimal = decimal.Parse(webConfigVar ?? "0");
return webConfigVarDecimal;
}
}
Normalerweise ist so
public static decimal ServiceFee
{
get
{
return decimal.Parse(ConfigurationManager.AppSettings["ServiceFee"] ?? "0");
}
}
Und die Web.Config
<appSettings>
<add key="ServiceFee" value="0.024" />
</appSettings>
UPDATE 2
Ich weiß, dass der Code läuft auf dem Server, aber der einzige Unterschied der Browser ist, und es ist immer mit diesen Browsern auf ein paar Maschinen.
Unabhängig davon, ob der Server lokal oder auf Produktions
Post-Code als ** Text ** –
Auch C# -Code läuft auf dem Server; sollte egal sein, was der Browser ist – BradleyDotNET