Oracleデータベースから次の値を(varcharとして)受け取っています。VisualStudioでは、次の値として7876,72
読み取られます。String
ケース1(予想されるケース):
私がデバッグしているとき、私は見ます:7876.72
そして私がしようとするConvert.ToDecimal("7876.72")
と私は得ています7876.72D
ケース2(間違ったケース):
私がデバッグしているとき、私は見ます:7876,72
そして私がしようとするConvert.ToDecimal("7876,72")
と私は得ています787672D
私はとをチェックしていますCultureInfo.CurrentCulture
、RegionInfo.CurrentRegion
そしてそれは両方のマシンで同じです...
これの主な理由は次のとおりです。
Convert.ToDecimal("7876,72").ToString("0,0.00", CultureInfo.InvariantCulture)
私に与える:787,672.00
そしてそれはあるべきです7,876.72
。
Global.asax-Application_Start
Dim newCulture As CultureInfo = DirectCast(System.Threading.Thread.CurrentThread.CurrentCulture.Clone(), CultureInfo)
newCulture.DateTimeFormat.ShortDatePattern = "yyyy/MM/dd"
newCulture.DateTimeFormat.DateSeparator = "/"
newCulture.NumberFormat.CurrencyDecimalSeparator = "."
newCulture.NumberFormat.NumberDecimalSeparator = "."
Thread.CurrentThread.CurrentCulture = newCulture
両方のマシンで同じ値を維持する方法についてのアイデアはありますか?
前もって感謝します!