Abgetrennt von Wie einen Objekt-String in ein Javascript-Object wandeln um ihn in Google-Charts zu verwenden?
Bitte nur eine Frage pro Thread [Hinweis] Wie poste ich richtig?
Danke für die Auskunft.
Ein Frage habe ich noch. Ist es möglich ein Array mit zwei Feldern zu erstellen, wo der erste Wert String und der zweite Wert Integer ist?
Ich kenne bislang nur ...
string[][] ary = new string[10][];
ary[0] = new string[] {"a","1"};
Ich benötige jedoch den zweiten Parameter als Integer. Noch dazu muss die erste Zeile die Datenfelder beinhalten.
Beispiel:
chartKisten.data = [
['State', 'Count'],
['annulliert', 12],
['Gebaut', 25],
['Eingang', 65],
['Ausgang', 22],
['Geliefert', 5]
];
Was nehme da am besten?
Eigentlich ist es besser wenn man ich es selbst erarbeitet, aber ich war mal so nett und hab ein klienes Beispiel erstellt:
public partial class Form1 : Form
{
private List<ChartObject> listChartObject = new List<ChartObject>();
public Form1()
{
InitializeComponent();
listChartObject.Add(new ChartObject("Ausgang", 22));
listChartObject.Add(new ChartObject("Wasauchimmer", 1000));
MessageBox.Show(listChartObject[0].ToString());
}
private void Form1_Load(object sender, EventArgs e)
{
this.Close();
}
}
class ChartObject
{
private string state;
private int count;
public ChartObject(string state, int count)
{
this.state = state;
this.count = count;
}
public override string ToString()
{
return state + " - " + count;
}
}
Okay,
aber bei
object lmaa = new object[2];
lmaa[0] = new { fn = "Watt", ln = ""Count" }
habe ich ja selbiges im Object stehen.
Ich bräuchte aber nur { "Watt", "Count" }. Und daran hapert es bei mir.
Sorry
@123thomas
Wenn du den Thread, von dem dieser hier abgetrennt wurde, berücksichtigst, dann geht es hier um eine JSON Serialisierung 😉
using System;
using Newtonsoft.Json;
public class Program
{
public static void Main()
{
var data = new object[] {
new object[] { "State", "Count" },
new object[] { "annulliert", 12 },
new object[] { "Gebaut", 25 },
new object[] { "Eingang", 65 },
new object[] { "Ausgang", 22 },
new object[] { "Geliefert", 5 },
};
var dataJson = JsonConvert.SerializeObject(data,Formatting.Indented);
Console.WriteLine(dataJson);
}
}
Ausgabe:
[
[
"State",
"Count"
],
[
"annulliert",
12
],
[
"Gebaut",
25
],
[
"Eingang",
65
],
[
"Ausgang",
22
],
[
"Geliefert",
5
]
]
@Sir Rufo
Damit hast du mir grade ein ziemliches Brett vor dem Kopf abgetrennt. Danke.
Zum Hintergrund, ich bin eigentlich FrontEnd Programmierer und mache derzeit die Arbeit von einem Kollegen der gekündigt hat. BackEnd Seitig und JSON mäßig fehlt mir anscheinend noch einiges.
Kannst Du mir noch kurz helfen, wie ich das so umbaue das ich das ganze Object in einer While Schleife fülle?
while (reader.Read())
{
...
}
Ich definiere mir im Moment das Object vor der Schleife.
var dataH = new object[] { };
Muss ich jetzt mit zwei Objekten arbeiten und diese in der Schleife zusammen führen? (Concat funktioniert nicht).
Ich denke, wenn ich das noch erklärt bekomme seid ihr mich los.
Hallo icolor,
arbeite mit einer Liste und benutze .Add()
Gruss
Coffeebean
Microsoft MVP // Me // Blog // GitHub // @Egghead // All my talks // Speakerdeck
Json kommt ursprünglich eigentlich aus dem Frontend; hat aber wegen seiner besseren Effizienz XML im Backend abgelöst.
Es heisst ja auch "JavaScript Object Notation".
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Mach dir halt einen Anonymen Typ oder eine entsprechende Klasse
OO gibts seit Platon - hatte der auch C#?
Mach dir halt einen Anonymen Typ oder eine entsprechende Klasse
Also man sollte sich von anonyme Typen eher fernhalten da es sehr unübersichtlich/fehleranfällig werden kann... (meine Meinung)
Da ist die bessere Alternative eine eigene Klasse.
Ich habe den Titel mal angepasst, so dass Suchende auch etwas damit anfangen können. EDIT: Ich sollte beim Wort "Shift" im Titel das "f" nicht vergessen... 😄