Hmm. 2.5 skall det ju vara som sagt.
En Fuling är väl att parsa till string och köra replace.
sb.Append(String.Parse(item.value).replace(",", "."))
Observera det versala "F" på Fuling. ;)
3 svar · 144 visningar · startad av Jon
Nu står det rejält stilla i huvudet.
Jag bygger upp en Insert into - sträng.
Problemet är att jag har en double, låt oss säga 2,5 som ska in.
Värdet ligger i en klass och om man debuggar så är värder {2.5} precis som det ska. När jag sen lägger in det i en stringbuilder för mitt insert-uttryck så blr det automatiskt "2,5" vilket naturligtvis inte alls går bra.
Resultatet blir ju då något i stil med:
"Insert Into Tabellnamn [Col1], [col2], [col3] Values (3, 2,5, 'kalle')"
Jag vill förstås att det ska vara:
"Insert Into Tabellnamn [Col1], [col2], [col3] Values (3, 2.5, 'kalle')"
Det måste alltså vara när jag gör sb.Append(item.value) som 2.5 blir till 2,5.
Hur tänka?
Hmm. 2.5 skall det ju vara som sagt.
En Fuling är väl att parsa till string och köra replace.
sb.Append(String.Parse(item.value).replace(",", "."))
Observera det versala "F" på Fuling. ;)
Här kommer en lösning. Den är dock ganska omständig.
using System;
using System.Text;
using System.Globalization;
using System.Threading;
public class TestString {
public static void Main(string[] args) {
Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
StringBuilder sb = new StringBuilder();
double n = 2.5;
sb.Append(n);
Console.WriteLine("Innehall: {0}", sb.ToString());
Console.WriteLine("Kultur: {0}", CultureInfo.CurrentCulture.Name);
}
}
Det borde gå att använda StringBuilder.AppendFormat på något sätt men jag vet inte exakt hur.