/ / DotNet.Highcharts a správne JSON - json, highcharts, dotnethighcharts

DotNet.Highcharts a správne JSON - json, highcharts, dotnethighcharts

Mám rozporuplný problém s JSON odoslaným na highcharts. Highcharts nie vždy odmietne JSON, ale keď to robí, aktualizácia JSON ručne do správneho formátu ju dôsledne opraví:

Exmaple DotNet.Hightcharts výstup:

series: [{ data: [284, 49, 100, 19], name: "some name" }, { data: [230, 250, 219, 878], name: "some name 2" }]

pri fixných na zahrnuté citáty to funguje:

 "series": [{ "data": [284, 49, 100, 19], "name": "some name" }, { "data": [230, 250, 219, 878], "name": "some name 2" }]

Existuje spôsob, ako dostať DotNet.Hightcharts na výstup tohto formátu?

odpovede:

1 pre odpoveď č. 1

Pri pohľade na DotNet.Vysokokapacitný zdrojový kód, zdá sa, že používa vlastný JsonSerializer, ktorý nekóduje názvy vlastníctiev a neexistuje žiadna možnosť zmeniť toto správanie ani vymeniť serializátor za iný, úplne zvládnuť zmenu formátovania v kóde ale vyzerá to tak, že by sa zmenili nasledujúce riadky: DotNet.Highcharts / JsonSerializer.cs by mali robiť to, čo potrebujete:

const string JSON_PROPERTY_WITH_VALUE_FORMAT = "{0}: {1}";
const string JSON_STRING_FORMAT = ""{0}"";

stať sa:

const string JSON_PROPERTY_WITH_VALUE_FORMAT = "{"0"}: {1}";
const string JSON_STRING_FORMAT = ""{0}"";

Takže som povedal, že možnosti sú:

  1. Kompilujte svoju vlastnú verziu DotNet.Highcharts pomocou zdrojového kódu s vyššie uvedenými zmenami.

  2. Presvedčte vývojárov projektov, aby zahrnuli také zmeny v ďalšom vydaní.

  3. Použite alternatívnu knižnicu ako napr Highcharts.Net ktorý štandardne uvádza mená.

  4. Nepoužívajte žiadnu knižnicu a jednoducho urobte svoje údaje doslovne umiestnené vo vnútri ručne kódovaného javascriptu Highcharts pomocou samostatného formátu Json ako Newtonsoft.Json.

Pred každým z vyššie uvedených, to znie atrochu zvláštne, že tento problém sa objavuje len vtedy, keď sa pridá viac údajov. Nie je to len prípad apostrofov vo vašich údajoch, ktoré porušujú formát, je to? Nezdá sa, že by sa v formátore utiekli.