У меня есть модель:
public class ReportViewModel
{
public int[] Data { get; set; }
public string[] Labels { get; set; }
}
Затем в контроллере я получаю данные и метки и сохраняю их на модели, которая будет отправлена на просмотр:
[HttpGet]
public async Task<IActionResult> Report()
{
ReportingViewModel vm = new ReportingViewModel();
vm.Data = DataReporting(vm);
vm.Labels = LabelReporting(vm);
return View(vm);
}
Массивы созданы идеально, потому что я отладил и это именно то, что я хочу.
Затем я передаю их представлению в график Chart.js через @ Model.Data, но на консоли появляется ошибка, и график не отображается.
<div id="container" class="align-items-center" style="width:75%; margin: 0 auto" ;>
<canvas id="myChart" width="682" height="340"></canvas>
<script>
var colorbarra = Array(78).fill('rgba(54, 162, 235, 0.2)');
var colorborde = Array(78).fill('rgba(54, 162, 235, 1)');
var datos = @Model.Data;
var etiquetas = @Model.Labels ;
var ctx = document.getElementById("myChart");
var myChart = new Chart(ctx, {
type: 'bar',
data: {
labels: etiquetas,
datasets: [{
label: 'Nº de Custodios subidos',
data: datos,
backgroundColor: colorbarra,
borderColor: colorborde,
borderWidth: 1
}]
},
options: {
scales: {
yAxes: [{
ticks: {
beginAtZero: true
}
}]
}
}
});
</script>
</div>
Это ошибка, которую я получаю на консоли:
Ошибка на консоли
Reporting:188 Uncaught SyntaxError: Unexpected token ]
А строка 188 - это строка, связанная с @ Model.Data
var datos = System.Int32[];
Заранее большое спасибо.