我有以下数据集:
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中提供的解决方案。
西尔
答案 0 :(得分:0)
感谢@ aluan-haddad
我错误地预处理了JSON.net直接处理的连接,所以我只需要更新我的控制器;
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))))