2017-01-26 12 views
0

私は、次のデータセットを持っている:JSON配列の引用符を削除します。コントローラかJS?

Sampled Target  
54  100 
53  100 
9  25 
63  100  

私はその後、私のMVCコントローラに次のコードを使用してJSONを生成するためにカンマで区切られた結果の中にこれらの行を連結しています:

JArray secondChart = new JArray(new JObject(
              new JProperty("name", "sampled"), 
              new JProperty("data", new JArray(string.Join(",", MyContext 
                .Select(p => p.SpecimenSampled)))) 
                ), 
                new JObject(
              new JProperty("name", "remaining"), 
              new JProperty("data", new JArray(string.Join(",", MyContext 
                .Select(p => (p.SpecimenTargets - p.SpecimenSampled))))) 

それは、次のJSONを生成:

[{ 
"name": "sampled", 
"data": ["54,53,9,63"] 
}, 
{ 
"name": "remaining", 
"data": ["46,47,16,37"] 
} 
] 

私以外はだろうが:

[{ 
"name": "sampled", 
"data": [54,53,9,63] 
}, 
{ 
"name": "remaining", 
"data": [46,47,16,37] 
} 
] 

私のjavascriptで消費され、グラフを表示するために。

コントローラーで二重引用符を取り除こうとしましたが、すべての行をコンマ区切りの文字列にマージするstring.Joinが原因で成功しませんでした。 私もjavascriptレベルで試しましたが失敗しました。

あなたのソリューションのコントローラまたはjavascriptに感謝します。

シルヴァン私が誤ってJSON.netによって直接世話をされるだろう連結を前処理されたので、私はちょうど私のコントローラを更新する必要がありました@ aluan-ハダッド

+1

JArrayコンストラクタに単一の文字列を渡していますが、それ以外の動作はどうすればよいですか? –

+0

コントローラから期待されるJSONを直接生成することは可能でしょうか?文字列型でなければならないコンマ区切りの結果に行を連結していることを考えてください...これは私の問題です – sylvain77

+0

'string.Join 'コールとすべてが期待どおりに動作します。 –

答えて

0

おかげ。

JArray secondChart = new JArray(new JObject(
              new JProperty("name", "sampled"), 
              new JProperty("data", new JArray(MyContext 
                .Select(p => p.SpecimenSampled))) 
                ), 
                new JObject(
              new JProperty("name", "remaining"), 
              new JProperty("data", new JArray(MyContext 
                .Select(p => (p.SpecimenTargets - p.SpecimenSampled))))