Autor |
Beitrag |
Dsharp
Hält's aus hier
Beiträge: 4
Erhaltene Danke: 1
|
Verfasst: Di 09.09.14 11:12
Hallo zusammen,
ich möchte einen json string in c# einlesen und dabei ein object struct ( array) wie in javascript erstellen. (s. unten).
Ich möchte dann auch in C# entsprechend so zugreifen: (Beispiel)
C#-Quelltext 1: 2:
| label.text = arrayObject.name; checkbox.checked = arrayObject.states[0]; |
Der JSON String muss dann natürlich immer gleich formatiert bleiben.
Daher müssen beide Objekte (C# und JS gleich sein).
Hat jemand eine Idee?
JavaScript-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| var arrayObject= { name:"Test", number: 6; states:[0,0,0,0,0,0,0,0,0,0,0,0,0,0], value1:0, value2:0 }
{"name":"","number":6,"states":[0,0,0,0,0,0,0,0,0,0,0,0,0,0],"value1":0,"value2":0} |
Zuletzt bearbeitet von Dsharp am Mi 10.09.14 15:11, insgesamt 1-mal bearbeitet
|
|
Th69
      

Beiträge: 4798
Erhaltene Danke: 1059
Win10
C#, C++ (VS 2017/19/22)
|
Verfasst: Di 09.09.14 12:31
Hallo,
dafür nimmst du am besten die Komponente Json.NET.
Die entsprechende C#-Klasse mußt du dann aber entsprechend manuell erzeugen.
PS: Doku für Json.NET gibt es unter Json.NET Documentation
|
|
Dsharp 
Hält's aus hier
Beiträge: 4
Erhaltene Danke: 1
|
Verfasst: Di 09.09.14 13:54
Danke, hat wunderbar geklappt.
Hier ein kleines Tutorial von mir:
1. json.net herunterladen (newtonking).
2. Verweis hinzufügen > Durchsuchen > DLL Newtonsoft.Json.dll laden.
3. using Newtonsoft.Json;
4. Eine Klasse bauen die eurer json Struktur entspricht. (Hierzu gibt es auch json2class Converter im Netz).
Beispiel:
C#-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| string json = @'{"name":"","number":6,"states":[0,0,0,0,0,0,0,0,0,0,0,0,0,0],"value1":0,"value2":0}'; ObjectJson objectJSON = JsonConvert.DeserializeObject<ObjectJson>(json); string json = JsonConvert.SerializeObject(objectJSON); public class ObjectJson { public string name{ get; set; } public int number{ get; set; } public List<int> states{ get; set; } public int value1{ get; set; } public int value1{ get; set; } } |
Ich hoffe das hilft dem ein oder anderen weiter.
Für diesen Beitrag haben gedankt: Christian S.
|
|
Th69
      

Beiträge: 4798
Erhaltene Danke: 1059
Win10
C#, C++ (VS 2017/19/22)
|
Verfasst: Di 09.09.14 19:01
Klasse und super, daß du gleich eine Anleitung hier postest. 
|
|
|