Как создать массив с данными из базы данных?
Мне нужна помощь. Я пытаюсь заполнить высокие диаграммы данными из базы данных.
Это прекрасно работает:
public ActionResult Index()
{
Highcharts chart1 = new Highcharts("chart1")
.SetYAxis(new YAxis { Title = new YAxisTitle { Text = "Zmiana" } })
.SetTitle(new Title { Text = "Zmiany wartości portfela w czasie" })
.InitChart(new Chart { DefaultSeriesType = ChartTypes.Column })
.SetLegend(new Legend { Enabled = false })
.SetXAxis(new XAxis { Categories = new[] { "Styczeń", "Luty", "Marzec", "Kwiecień" } })
.SetSeries(new Series { Data = new Data(new object[] { 1, 8, 9, 6 }), Name = "Miesiąc" });
Но это не так:
public ActionResult Index()
{
Highcharts chart1 = new Highcharts("chart1")
.SetYAxis(new YAxis { Title = new YAxisTitle { Text = "Zmiana" } })
.SetTitle(new Title { Text = "Zmiany wartości portfela w czasie" })
.InitChart(new Chart { DefaultSeriesType = ChartTypes.Column })
.SetLegend(new Legend { Enabled = false })
.SetXAxis(new XAxis { Type = AxisTypes.Datetime })
.SetSeries(new[]
{
new Series
{
Name = "Miesiąc" ,
Data = new Data(db.Wyniki.Select(x=> new Point {X=x.ID, Y=x.ID}).ToArray())
}
});
У меня есть эта ошибка:
Невозможно привести тип System.Int32 к типу DotNet.Highcharts.Helpers.Number. LINQ to Entities поддерживает только приведение типов примитивов и перечислений EDM
Я перепробовал много решений, но не смог решить это и заполнил данные большими диаграммами.
1 ответ
Замещать
Data = new Data(db.Wyniki.Select(x=> new Point {X=x.ID, Y=x.ID}).ToArray())
от
Data = new Data(db.Wyniki.ToList().Select(x=> new Point {Y=x.ID}).ToArray())
может сделать работу;)