Laden...

Wie einen Objekt-String in ein Javascript-Object wandeln um ihn in Google-Charts zu verwenden?

Erstellt von icolor vor 6 Jahren Letzter Beitrag vor 6 Jahren 1.083 Views
I
icolor Themenstarter:in
115 Beiträge seit 2008
vor 6 Jahren
Wie einen Objekt-String in ein Javascript-Object wandeln um ihn in Google-Charts zu verwenden?

Moin,
ich nutze in meiner Anwendung C# mit JavaScript und AngularJs. Ich möchte gerne das angular-google-chart nutzen. Hierin kann ich für ein Chart Daten zum Beispiel wie
chartKisten.data = [
['Component', 'cost'],
['annulliert', 12],
['Gebaut', 25],
['Eingang', 65],
['Ausgang', 22],
['Geliefert', 5]
];
erfassen.
Ich bin jetzt hingegangen und rufe eine WebMethode in C# auf um mit über den SQL-Server die Daten zu holen.


con.Open();
                theSql = "SELECT * FROM X";
                using (SqlCommand command = new SqlCommand(theSql, con))
                {
                    using (SqlDataReader reader = command.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            retString = retString + "['" + reader.GetValue(0).ToString() + "', " + reader.GetValue(1) + "], ";
                        }
                    }
                    retString = retString.Substring(0, retString.Length - 2) + "]";
                    con.Close();
                    return retString;
                }

Das Problem ist nun, das ich mir hier einen String zusammen gebastelt habe und im JavaScript das Ganze wohl ein Object ist.
Mein String schaut derzeit so aus:


"[['Projekt', 'Anzahl'],['', 22605], ['P/111111', 0], ['VT00000000', 1179094], ['VT00024291', 55], ['VT00030513', 41], ['VT00036017', 62], ['VT00038617', 565], ['VT00038873', 91], ['VT00039010', 203], ['VT00042518', 682], ['VT00043674', 250], ['VT00044973', 1], ['VT00046807', 30], ['VT00047470', 30], ['VT00048145', 28], ['VT00048286', 477], ['VT00048472', 550], ['VT99999999', 0], ['VTXXXXXXXX', 0]]"

Und irgendwie habe ich heute ein Brett vor dem Kopf und bekomme meinen gebastelten String nicht umgewandelt in das passende Objekt.


chartKisten.data: Array[6]
0: Array[2]
1: Array[2]
2: Array[2]
3: Array[2]
4: Array[2]
5: Array[2]

Kann mir jemand ggf. mal auf die Sprünge helfen? Danke sehr ...

16.807 Beiträge seit 2008
vor 6 Jahren

Mit Java und AngularJs?

Java? Meinst Du nicht JavaScript? 🤔
Das sind zwei verschiedene Sprachen...

Json Serialisierung dürfte hier das Stichwort sein.
Mit Strick-Frickelei kam man noch nie weit.

2.207 Beiträge seit 2011
vor 6 Jahren

Hallo iColor,

zu dem von Abt gesagtem: JSON.parse() und/oder JSON.stringify() könnten dir helfen.

Gruss

Coffeebean