Частичный вид:передача данных в формате JSON от контроллера для просмотра
var dataa;
$.ajax({
url: ServerUrl + '/Dashboard/GetData',
type: 'POST',
cache: false,
dataType: 'text',
async: true,
error: function (xhr) {
//alert('Error: ' + xhr.statusText);
},
success: function (result) {
debugger;
dataa = result;
var chart = c3.generate({
data: {
type: 'bar',
json: [
dataa
],
keys: {
x: 'indicator',
value: ['total']
}
},
axis: {
x: {
type: 'category'
}
},
bar: {
width: {
ratio: 0.5
}
}
});
}
});
Контроллер JSon код
public string GetData()
{
return "{ 'indicator': 'X', 'total': 100 },{ 'indicator': 'Y', 'total': 200 },{ 'indicator': 'Z', 'total': 300 }";
}
Когда я использую приведенный выше код не работает, но если я передать данные JSON, как указано в this JS Fiddle link, он работает. Я передаю данные JSON неправильно из контроллера.?
Пожалуйста, помогите.
его не действительным (ваш возвращающей строку, а не JSON) - это необходимо будет '[{индикатор: ' X ", всего: 100}, {...}]'. Вам было бы лучше создать коллекцию объектов со свойствами 'indicator' и' total', а затем 'return Json (myCollection);' so its valid. –
@StephenMuecke: это действительная строка return "{\" indicator \ ": \" X \ ", \" total \ ": \" 100 \ "}, {\" indicator \ ": \" Y \ " , \ "total \": \ "200 \"}, {\ "indicator \": \ "Z \", \ "total \": \ "300 \"} "; – user2998990
@StephenMuecke: Мне просто нужно проверить его с помощью жестко закодированных json-данных, переданных с контроллера. Пожалуйста, помогите мне с тем же – user2998990